Cod sursa(job #473701)

Utilizator lexusbStruts lexusb Data 31 iulie 2010 11:38:43
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include<stdio.h>
#include<math.h>

int T, c = 0, N, s;
double u;

int suma(double nr)
{
	s = 0;
	/*while((int)nr>0)
	{
		s = s+(int)(pow(nr, nr));
		nr--;
	}

	if(s>=10)
		return s%10;
	else
		return s;*/

	while((int)nr>0)
	{
		if(nr>=10)
		{
			u = (int)nr%10;
			s = (s%10+((int)(pow(u, u)))%10)%10;
		}
		else
			s = (s%10+((int)(pow(nr, nr)))%10)%10;
		nr--;
	}
	return s;
}

int main()
{
	FILE *f, *g;

	f = fopen("cifra.in.txt", "r");
	g = fopen("cifra.out.txt", "w");

	if(c==0)
	{
		fscanf(f, "%d", &T);
		c++;
	}

	while(c>=1 && c<=T)
	{
		fscanf(f, "%d", &N);
		fprintf(g, "%d\n", suma(N));
		c++;
	}

	fclose(f);
	fclose(g);
	return 0;
}