Cerința
Să se scrie o funcţie C/C++ recursivă care primeşte ca parametru un şir de caractere format din litere mari/mici ale alfabetului englez şi spaţii şi returnează numărul de vocale din şir.
Restricţii şi precizări
Numele funcţiei este nr_vocale
Funcţia are un singur parametru (şirul format din maxim 10000 caractere).
Exemplu:
nr_vocale("Ana are mere") = 6
Răspunsuri la întrebare
Răspuns de
13
Ti-am facut programul cu totul in C++. Succes!
#include <bits/stdc++.h>
using namespace std;
int nr_vocale(char s[])
{
if(s[0] == NULL) return 0;
int lu = strlen(s);
char ch = s[lu - 1]; // caracterul de pe ultima pozitie
s[lu - 1] = NULL; // eliminam ultimul caracter din sir
if(strchr("aeiouAEIOU", ch))
return 1 + nr_vocale(s);
return nr_vocale(s);
}
#include <bits/stdc++.h>
using namespace std;
int nr_vocale(char s[])
{
if(s[0] == NULL) return 0;
int lu = strlen(s);
char ch = s[lu - 1]; // caracterul de pe ultima pozitie
s[lu - 1] = NULL; // eliminam ultimul caracter din sir
if(strchr("aeiouAEIOU", ch))
return 1 + nr_vocale(s);
return nr_vocale(s);
}
Alte întrebări interesante