# PBinfo #1636 – Cifre15 – Rezolvare C++

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

## Enunț

Cerința
Alin este un elev pasionat de înmulțirea numerelor. Știe că produsul a două sau mai multe numere naturale poate avea ultima cifră 0.

Se dau n numere naturale nenule. Ajutați-l pe Alin să determine:
a.	numărul de cifre 0  de la sfârşitul produsului celor n numere; 
b.	care este ultima cifră nenulă a acestui produs. 

Date de intrare
De pe prima linie a fișierului cifre15.in se citește un număr natural n iar de pe următoarea linie din fișier se citesc n numere naturale nenule, separate prin câte un spaţiu.

Date de ieșire
Fișierul de ieșire cifre15.out conține o singură linie pe care vor fi scrise cele două valori determinate, separate printr-un singur spațiu.

Restricții și precizări

1 ≤ n ≤ 100
numerele de pe a doua linie a fișierului de intrare au cel mult 9 cifre.

Exemplu:
cifre15.in

3 
50 12 18
cifre15.out

2 8 
Explicație
50∙12∙18=10800, la finalul produsului sunt 2 cifre 0, iar ultima cifră nenulă este 8

## Cod sursă C++

```cpp
#include <bits/stdc++.h>
using namespace std;
ifstream in("cifre15.in");
ofstream out("cifre15.out");
int main() {
    int n, nr2 = 0, nr5 = 0, p = 1;
    in >> n;
    for (int i = 1; i <= n; ++i) {
        int temp;
        in >> temp;
        while (temp % 2 == 0) {
            nr2++;
            temp = temp / 2;
        } while (temp % 5 == 0) {
            nr5++;
            temp = temp / 5;
        } p = (p * (temp % 10)) % 10;
    } out << min(nr2, nr5) << " ";
    int c = 0, z = 0;
    if (nr2 > nr5) {
        c = nr2 - nr5;
        z = 2;
    } else {
        c = nr5 - nr2;
        z = 5;
    } while (c > 0) {
        p = (p * z) % 10;
        c--;
    } out << p;
    return 0;
}
```

## Resurse

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