# PBinfo #4209 – DifParImpar – Rezolvare C++

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

## Enunț

Cerința
Scrieți funcția recursivă DifParImpar care primind ca parametru un număr natural n, returnează un număr întreg reprezentând diferența dintre numărul cifrelor pare și numărul celor impare.

Restricții și precizări

0 ≤ n ≤ 2.147.000.000
Numele funcției este DifParImpar.
Se recomandă utilizarea recursivității în rezolvarea problemei. De asemenea, se recomandă să nu se folosească alte funcții suplimentare.

Exemplu:
DifParImpar(240) = 3 și DifParImpar(21377) = -3.

Important
Soluția propusă va conține doar funcția cerută. Introducerea în soluție a altor instrucțiuni poate duce la erori de compilare sau de execuție, care vor duce la depunctarea soluției.

## Cod sursă C++

```cpp
int DifParImpar(int n) {
    int pare = 0, impare = 0;
    if (n == 0)
        return 1;
    else {
        while (n > 0) {
            if (n % 10 % 2 == 0)
                pare++;
            else if (n % 10 % 2 == 1)
                impare++;
            n = n / 10;
        }
    } return pare - impare;
    return 0;
}
```

## Resurse

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