87 lines
1.4 KiB
C++
87 lines
1.4 KiB
C++
/*
|
|
Nome: Mario
|
|
Cognome: Montanari
|
|
|
|
Contare il numero di vocali minuscole e
|
|
maiuscole contenute in una frase data in input.
|
|
*/
|
|
|
|
#include <iostream>
|
|
#include <cstring>
|
|
|
|
#define SIZE 100+1
|
|
|
|
using namespace std;
|
|
|
|
typedef struct{
|
|
int nVocMin;
|
|
int nVocMai;
|
|
} result;
|
|
|
|
result vocali (char str[], int size);
|
|
bool isVocMin(char chr);
|
|
bool isVocMai(char chr);
|
|
|
|
int main (void){
|
|
char str[SIZE];
|
|
result risultato;
|
|
|
|
cout << "Inserisci una frase: ";
|
|
cin.getline(str, SIZE);
|
|
|
|
risultato = vocali(str, sizeof(str)/sizeof(str[0]));
|
|
|
|
cout << endl << "Numero di vocali minuscole: " << risultato.nVocMin << endl;
|
|
cout << "Numero di vocali maiuscole: " << risultato.nVocMai << endl;
|
|
|
|
return 0;
|
|
}
|
|
|
|
result vocali (char str[], int size){
|
|
result res = {0, 0};
|
|
|
|
for(int i = 0; i < size; i++){
|
|
|
|
if(isVocMin(str[i])){
|
|
res.nVocMin++;
|
|
}
|
|
|
|
if(isVocMai(str[i])){
|
|
res.nVocMai++;
|
|
}
|
|
}
|
|
|
|
return res;
|
|
}
|
|
|
|
bool isVocMin(char chr){
|
|
bool isMin = false;
|
|
|
|
if(
|
|
chr == 'a' ||
|
|
chr == 'e' ||
|
|
chr == 'i' ||
|
|
chr == 'o' ||
|
|
chr == 'u'
|
|
){
|
|
isMin = true;
|
|
}
|
|
|
|
return isMin;
|
|
}
|
|
|
|
bool isVocMai(char chr){
|
|
bool isMai = false;
|
|
|
|
if (
|
|
chr == 'A' ||
|
|
chr == 'E' ||
|
|
chr == 'I' ||
|
|
chr == 'O' ||
|
|
chr == 'U'
|
|
){
|
|
isMai = true;
|
|
}
|
|
|
|
return isMai;
|
|
} |