Pagini recente » Sandbox (cutiuţa cu năsip) | Cod sursa (job #2359314) | Cod sursa (job #2378208) | tema | Cod sursa (job #1026093)
#include <stdio.h>
#include <stdlib.h>
int divizori (int num, int div)
{
int stop = 0, nr_div =0;
do
{
if ((num % div) == 0)
{
num = num / div;
nr_div += 1;
}
else
stop = 1;
}
while (stop != 1);
return nr_div;
}
int factorial (int x)
{
int contor=0;
unsigned long long i;
for (i=1 ; i<10000000 ; i++)
{
contor += divizori(i,5);
if (contor == x)
break;
}
return i;
}
FILE *fin, *fout;
int main()
{
int p;
fin = fopen("fact.in","r");
fout = fopen("fact.out","w");
fscanf(fin, "%d",&p);
if ((p < 0)||(p > 100000000))
return 1;
if (factorial(p) == 10000000)
fprintf(fout,"%d",-1);
else
fprintf(fout,"%d",factorial (p));
fclose(fin);
fclose(fout);
return 0;
}