diff options
author | Santo Cariotti <dcariotti24@gmail.com> | 2020-01-26 17:09:45 +0100 |
---|---|---|
committer | Santo Cariotti <dcariotti24@gmail.com> | 2020-01-26 17:09:45 +0100 |
commit | 8ecf6bb46c4915af23fdbdb3032bf1255b2d0617 (patch) | |
tree | 35302f9051d90cf69f87a41fa907f3d98b5e9ff2 /I_anno/Programmazione_1 | |
parent | 8ae615f4456f58d6c476f8618bf2e2d416d2c3e0 (diff) |
ex2 18/02/19
Scrivere un metodo che prenda in input una matrice di puntatori a stringhe M e due numeri short senza segno, k ed s, e restituisca il numero di colonne contenenti almeno k stringhe con un numero di lettere vocali minore di s.
Diffstat (limited to 'I_anno/Programmazione_1')
-rw-r--r-- | I_anno/Programmazione_1/ex2_18_02_19.cc | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/I_anno/Programmazione_1/ex2_18_02_19.cc b/I_anno/Programmazione_1/ex2_18_02_19.cc new file mode 100644 index 0000000..8195fb9 --- /dev/null +++ b/I_anno/Programmazione_1/ex2_18_02_19.cc @@ -0,0 +1,43 @@ +#include<iostream> +#include<cctype> + +using namespace std; + +short func(string (*M)[4], unsigned short k, unsigned short s) { + short counter{}; + + for(int i = 0; i < 4; ++i) { + short _rowcounter{}; + for(int j = 0; j < 3; ++j) { + short _vocals{}; + for(char& c : M[j][i]) { + switch(tolower(c)) { + case 'a': case 'e': case 'i': case 'o': case 'u': + ++_vocals; + break; + default: break; + } + } + + if(_vocals < s) ++_rowcounter; + } + + if(_rowcounter >= k) ++counter; + } + + return counter; +} + + +int main() { + string M[3][4] = { + {"HEI", "we", "ciao", "com'è?"}, + {"HEI", "we", "ciao", "com'è?"}, + {"HEI", "we", "ciao", "com'è?"}, + }; + + cout << func(&M[0], 2, 3); + + + return 0; +} |