# PBinfo #41 – crearenumar – Rezolvare C++

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

## Enunț

Cerinţa
Scrieți definiția completă a subprogramului F, care primește prin intermediul parametrului n un număr natural nenul (1≤n≤9), iar prin intermediul parametrului a, un tablou unidimensional care conţine n valori naturale, fiecare dintre acestea reprezentând câte o cifră a unui număr. Astfel,  a0 reprezintă prima cifră a numărului, a1 a doua cifră, etc.

Subprogramul furnizează prin parametrul k o valoare naturală egală cu numărul obţinut din cifrele pare memorate în tabloul a sau valoarea -1 dacă în tablou nu există nicio cifră pară.

Restricţii şi precizări

0 < n < 10
numele subprogramului cerut este F
parametrii sunt, în această ordine: n, a, k
elementele vectorului a sunt indexate de la zero
valoarea lui k nu va depăși 2000000000

Exemplu:
Dacă n=6 și a= (2, 3, 5, 6, 4, 1), după apel k=264.

Important
Soluţia propusă va conţine doar definiţia subprogramului cerut. Prezenţa în soluţie a altor instrucţiuni poate duce erori de compilare sau de execuţie care vor avea ca efect depunctarea soluţiei.

## Cod sursă C++

```cpp
int F(int n , int a[] , int& k) {
    k = 0;
    bool adv = 0;
    for (int i = 0; i < n; i++) {
        if (a[i] % 2 == 0) {
            adv++;
            k = k * 10 + a[i];
        }
    } if(adv == 0)
        k = -1; return 0;
}
```

## Resurse

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