Pagini recente » Borderou de evaluare (job #2488806) | Cod sursa (job #176340) | Cod sursa (job #635977) | Multe "smenuri" de programare in C/C++... si nu numai! | Cod sursa (job #2020341)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int cinci(int n)
{
int cont = 0;
while (n % 5 == 0)
{
cont++;
n /= 5;
}
return cont;
}
int factorial(int a)
{
int zero = 0;
int i = 0;
while (1)
{
if (zero > a)
{
return -1;
}
if (zero == a)
{
return i;
}
i++;
if (i % 5 == 0)
{
zero += cinci(i);
}
}
}
int main()
{
FILE *f, *g;
int res, a;
f = fopen("factorial.in", "r");
g = fopen("factorial.out", "w");
if (NULL == f)
{
return 0;
}
if (NULL == g)
{
return 0;
}
fscanf(f, "%d", &a);
res = factorial(a);
fprintf(g, "%d", res);
fclose(f);
fclose(g);
return 0;
}