Pagini recente » Cod sursa (job #359724) | Cod sursa (job #184982) | Cod sursa (job #1621574) | Cod sursa (job #804445) | Cod sursa (job #2453202)
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
void save_tens(unsigned long long *p, unsigned long long* n)
{
while ((*p % 10 == 0)&&(*n!=0)&&(*p!=0))
{
*p = *p / 10;
*n = *n - 1;
}
}
unsigned long min(unsigned long long a, unsigned long long b)
{
if (a < b)
return a;
return b;
}
int main()
{
FILE* f = fopen("fact.in", "rt");
unsigned long long n, p = 1, i = 2;
fscanf(f, "%llu", &n);
while (n)
{
p = (p * (i % 1000000000)) % 1000000000;
save_tens(&p, &n);
printf("%llu %llu \n", p, n);
i++;
}
f = fopen("fact.out", "wt");
fprintf(f, "%llu \n", i-1);
fflush(stdout);
fclose(f);
return 0;
}