Cod sursa(job #76026)
| Utilizator | Data | 7 august 2007 16:40:20 | |
|---|---|---|---|
| Problema | Factorial | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.53 kb |
#include <stdio.h>
int main()
{
int p,k,i,z;
long int n,emi;
FILE *fin, *fout;
fin=fopen("fact.in","r");
scanf("%d",&p);
n=1;
i=2;
z=0;
while (z!=p && n<=1000000)
{
n*=i;//calculeaza factorialul
i++;
z=0;//indicator pt nr de 0-uri ale lui n
emi=n;//salvez valoarea lui n pt a nu se pierde
k=0;
while (k==0)
{
k=n%10;
n=n/10;
z++;
}
};
fclose(fin);
fout=fopen("fact.out","w");
if (z==p) fprintf(fout,"%d",i);
else fprintf(fout,"-1");
fclose(fout);
return 0;
}