Hey Com,
ich habe ein kleines Problem.
Und zwar muss ich die Anzahl von vorkommenden Buchstaben einer Zeichenkette bestimmen.
Die zu zählenden Buchstaben sind aber auf [A,B,C,D,E,F] beschränkt.
Bei jedem anderen eingegebenen Wert soll ein Fehler ausgegeben werden.
Nach einiger Recherche bin ich auf eine String-Funktion (strcmp) gestoßen die 2 Strings miteinander vergleicht.
Also habe ich zusätzlich einen Prüf-String erstellt um den eingegeben Code mit diesem zu vergleichen.
Leider weiß ich nicht genau wie ich das programmier-technisch umsetzten kann.
Im Anhang mein bisheriger Versuch.
Wäre schön wenn mir jemanden helfen könnte.
MfG
Hotte
ich habe ein kleines Problem.
Und zwar muss ich die Anzahl von vorkommenden Buchstaben einer Zeichenkette bestimmen.
Die zu zählenden Buchstaben sind aber auf [A,B,C,D,E,F] beschränkt.
Bei jedem anderen eingegebenen Wert soll ein Fehler ausgegeben werden.
Nach einiger Recherche bin ich auf eine String-Funktion (strcmp) gestoßen die 2 Strings miteinander vergleicht.
Also habe ich zusätzlich einen Prüf-String erstellt um den eingegeben Code mit diesem zu vergleichen.
Leider weiß ich nicht genau wie ich das programmier-technisch umsetzten kann.
Im Anhang mein bisheriger Versuch.
C#:
#include <iostream>
#include <stdio.h>
#include <string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main() {
char zeichenkette [200];
char pruefziffern [6]= {'A','B','C','D','E','F'};
int i;
int p;
int x=0;
int y=0;
int a=0;
int b=0;
int c=0;
int d=0;
printf("Geben Sie die Zeichenkette ein ");
scanf("%s", &zeichenkette[i]);
p= strncmp(zeichenkette, pruefziffern, i);
if(p!=0){
printf("Unzulaessige Zeichen");
}
else{
for(i=0; i<zeichenkette[i]; i++){
if(zeichenkette[i] =='A'){
x=x+1;
}
else if(zeichenkette[i] == 'B'){
y=y+1;
}
else if(zeichenkette[i] == 'C'){
a=a+1;
}
else if(zeichenkette[i] == 'D'){
b=b+1;
}
else if(zeichenkette[i] == 'E'){
c=c+1;
}
else if(zeichenkette[i] == 'F'){
d=d+1;
}
printf("A(%d) B(%d) C(%d) D(%d) E(%d) F(%d)", x, y, a, b, c, d);
}
}
return 0;
}
Wäre schön wenn mir jemanden helfen könnte.
MfG
Hotte
Zuletzt bearbeitet: