Informatică, întrebare adresată de ingerasdumitre, 9 ani în urmă

Cerința Se dă o propoziție formată din litere mari și mici ale alfabetului englez, cifre, spații și semne de punctuație, în care literele mari și mici se consideră identice. Determinați vocala din șir cu număr maxim de apariții. Date de intrare Programul citește de la tastatură un șir de caractere. Date de ieșire Programul va afișa pe ecran vocala determinată, literă mare. Restricții și precizări șirul citit va avea cel mult 255 caractere dacă în șir există mai multe vocale cu număr maxim de apariții, se va afișa prima în ordine alfabetică vocalele sunt AEIOUaeiou

Răspunsuri la întrebare

Răspuns de artur99
9
char str[255];
int i;
int va=0,ve=0,vi=0,vo=0,vu=0,max;
cin.get(str,255);
for(i=0;i<strlen(str);i++){
    if(toupper(str[i]) == 'A') va++;
    else if(toupper(str[i]) == 'E') ve++;
    else if(toupper(str[i]) == 'I') vi++;
    else if(toupper(str[i]) == 'O') vo++;
    else if(toupper(str[i]) == 'U') vu++;
}
max=va;
if(ve>max)max=ve;
if(vi>max)max=vi;
if(vo>max)max=vo;
if(vu>max)max=vu;

if(va==max)cout<<"A";
else if(ve==max)cout<<"E";
else if(vi==max)cout<<"I";
else if(vo==max)cout<<"O";
else cout<<"U";
Alte întrebări interesante