Pagini recente » Cod sursa (job #461763) | Cod sursa (job #1824489) | Cod sursa (job #1893977) | Cod sursa (job #542228) | Cod sursa (job #1043159)
#include<stdio.h>
int put (int b,int e)
{
int i,r=1;
for(i=1;i<=e;i++){r=r*b;}
return r;
}
int s=0,pp=5,n=0,p,x,cp,i;
FILE *f,*g;
int main ()
{
f=fopen("fact.in","r");
fscanf(f,"%d",&p);fclose(f);
g=fopen("fact.out","w");
if(p==0)fprintf(g,"%d",1);
else if(p==1)fprintf(g,"%d",5);
else{ while(s<p){s=s+pp-1;pp*=5;n++;}
do{x=int((p+n-1)*4*put(5,n)/(put(5,n)-1));
cp=0;
for(i=1;i<=n;i++){cp=cp+x/put(5,i);}
if(cp!=p)x-=5;
}while(cp!=p);
fprintf(g,"%d",x);}
fclose(g);
return 0;
}