Pagini recente » Cod sursa (job #2202854) | Cod sursa (job #999340) | Cod sursa (job #331875) | Cod sursa (job #1382028) | Cod sursa (job #11815)
Cod sursa(job #11815)
#include<stdio.h>
int exp;
long putere(long a){
long v=5;
while(v<a){
v*=5;
exp++;
}
return v/5;
}
int zerouri(){
int i=0,c=0;
while(i<exp){
c+=5*i;
i++;
}
return c+1;
}
int main(){
FILE *f;
f=fopen("fact.in","r");
long p,p2,k;
int z;
fscanf(f,"%ld",&p);
fclose(f);
f=fopen("fact.out","w");
if(p==0) fprintf(f,"1");
else{
p2=5*p;
k=putere(p2);
//k=cea mai mare putere a lui 5 <p2
z=zerouri();
//z=nr de zerouri ale lui k fact
p=(p-z)*5+k;
fprintf(f,"%ld",p);
}
fprintf(f,"\n");
fclose(f);
return 0;
}