Cod sursa(job #45334)

Utilizator xdanxDaN xdanx Data 1 aprilie 2007 13:26:03
Problema Cifra Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include<stdio.h>
#include<math.h>
#include<string.h>
int uc(int a,int ex)
{
	a%=10;
	//ex%=10;
	if (ex%4==0) 
		return (int)pow(a,4)%10; 
	ex%=4;
	return (int)pow(a,ex)%10;
}
int main()
{
	char m[120];
	FILE *in=fopen("cifra.in","r"),*out=fopen("cifra.out","w");
	int n,s,t,j,c;
	fscanf(in,"%d",&t);
	for (int i=0;i<t;++i)
	{
		//printf("---Testul %d-----\n",i+1);
		s=0;
		fscanf(in,"%s",m);
		//printf("M este %s\n",m);
		if (strlen(m)>=2) n=(m[strlen(m)-2]-'0')*10+(m[strlen(m)-1]-'0');
			else n=m[0]-'0';
		printf("Ultimele 2 cifre = %d \n",n);
		//n%=100;
		c=n/20;
		s+=c*4;
		//uc=n%20;
		for (j=1;j<=n%20;++j)
			{
				//printf("Uc pentru %d este %d\n",j,uc(j,j));
				s+=uc(j,j);
			}
		printf("Suma este %d\n",s);
		fprintf(out,"%d\n",s%10);
	}
	return 0;
}