Cod sursa(job #377984)

Utilizator pufuPufu Cristian pufu Data 27 decembrie 2009 10:43:31
Problema Factorial Scor 10
Compilator c Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <stdio.h>
#include <stdlib.h>

int fact (int n)
{
	int i, p;
	int k = 0;
	
	p = 1;
	for (i = 2; i <= n; i++)
		if ((p % 10) == 0)
		{
			p = p / 10;
			k++;
			p = p * i;
		}
		else
			p = p * i;
		
	if ((p % 10) == 0)
		k++;

	return k;
}

int main()
{
	int N, P;
	FILE *f, *g;
	
	f = fopen ("fact.in", "r");
	g = fopen ("fact.out", "w");

	fscanf (f, "%d", &P);
	if (P == 0)
	{
		fprintf(g, "1");
		return 0;
	}

	N = P;

	while (1)
	{
		if (fact(N) == P)
		{
			fprintf(g, "%d", N);
			break;
		}
			
		N++;
	}

	fclose(f);
	fclose(g);

	return 0;
}