# PBinfo #1654 – NrVocRec – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

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

Important:
Dacă doriţi să folosiţi funcţiile predefinite pe şiruri de caractere (strlen, strchr etc), includeţi biblioteca cstring (string.h) înainte de a scrie definiţia funcţiei.

## Cod sursă C++

```cpp
#include <cstring>
int nr_vocale(char *sir)
{
    if(sir[0] == NULL)
        return 0;
    if(strchr("aeiouAEIOU", sir[0]))
        return 1 + nr_vocale(sir + 1);
    return nr_vocale(sir + 1);
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/1654)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/1654/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-1654/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
