Informatică, întrebare adresată de jugubugule94, 8 ani în urmă

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

Cerinţă
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 cifre8.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 cifre8.out conţine o singură linie pe care vor fi scrise cele două valori determinate, separate printr-un singur spaţiu.

Restricţii
1 ≤ n ≤ 100
cele n numere citite sunt nenule şi vor avea cel mult 9 cifre

Va rog un program in C, nu C++, dau coroana

Răspunsuri la întrebare

Răspuns de fatman195322
1

#include <iostream>

#include <fstream>

using namespace std;

ifstream fin ("cifre8.in");

ofstream fout ("cifre8.out");

int main()

{

unsigned int n,  i,  x,  p=1,  nrzero=0;

fin>>n;

for (i=1; i<=n; i++)

    {

     fin>>x;

     p*=x;

    }

while (p%10 == 0)

    {

     nrzero++;

     p/=10;

    }

fout<<nrzero<<endl<<p%10;

return 0;

}


jugubugule94: asa am fct si eu dar chestia e ca p poate depasi pana si unsignd long long
Alte întrebări interesante