Cod sursa(job #3152505)
Utilizator | Data | 25 septembrie 2023 13:20:50 | |
---|---|---|---|
Problema | Factorial | Scor | 0 |
Compilator | c-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.57 kb |
#include <stdio.h>
int main()
{
FILE *fin, *fout;
int n, p, power5, nr_zero, dif, n2;
fin=fopen("fact.in", "r");
fscanf(fin, "%d", &p);
fclose(fin);
if(p==0){
n=1;
}
else{
n=p*5;
nr_zero=0;
power5=5;
while(power5<n){
nr_zero+=n/power5;
power5*=5;
}
dif=nr_zero-p;
n2=n;
while(dif!=0){
if(dif>0){
n2-=dif*5;
}
}
}
fout=fopen("fact.out", "w");
fprintf(fout, "%d", n2);
fclose(fout);
return 0;
}