Cod sursa(job #2453202)

Utilizator cristi1990anCornea Cristian cristi1990an Data 2 septembrie 2019 18:57:25
Problema Factorial Scor 15
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#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;
}