Cod sursa(job #361137)

Utilizator nandoLicker Nandor nando Data 3 noiembrie 2009 20:59:05
Problema Factorial Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.53 kb
#include <cstdio>
#include <ctime>
#include <cmath>

int f(int a){
	if(a==1)
		return 1;
	else return a*f(a-1); 
}
int main(){
	clock_t beg=clock();
	unsigned int P,N=0;
	FILE *fin,*fout;
	fin=fopen("fact.in","r");
	fout=fopen("fact.out","w+");
	fscanf(fin,"%u",&P);
	fclose(fin);
	if(P==0){
		N=1;
	}else{
		int j;
		j=P;
		for(int i=1;i<13;i++){
			int x=(P/(int)pow((double)5,i));
			x=(x==0)?0:x-1;
			j-=x;
		}
		N=5*j;
		if(j<0){
			N=-1;
		}
	}
	fprintf(fout,"%d",N);
	fclose(fout);
	printf("%f",float(clock()-beg)/CLOCKS_PER_SEC);
}