Cod sursa(job #47276)

Utilizator razyelxrazyelx razyelx Data 3 aprilie 2007 15:13:48
Problema Cifra Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include <stdio.h>
#include <math.h>
int k,n,j;
long long s,i;
char nr,a;
int nre[1000];
int main(){
	FILE*f=fopen("cifra.in", "r");
	FILE*g=fopen("cifra.out", "w");
	fscanf(f,"%d",&k);
	fscanf(f,"%c",&a);
	while(k){
		nre[0]=0;
		i=0;
		do{
			fscanf(f,"%c", &nr);
			if((nr>=48&&nr<=57)&&!feof(f))nre[++i]=nr-48;
		}while((nr>=48&&nr<=57)&&!feof(f));
		n=nre[i-1]*10+nre[i];
		//n=a%100;
		s=7*nre[i-1];
		j=i;
		for(i=nre[j-1]*10;i<=nre[j-1]*10+nre[j];i++){
			if(i%10==5)
				s+=5;
			if(i%10==9)
				s+=9;
			if(i%10==4)
				s+=6;
			if(i%10==6)
				s+=6;
			if(i%10==1)
				s++;
			if(i%10==7)
				s+=pow(7,i%4);
			if(i%10==2)
				if(i%4==0)
					s+=6;
				else s+=pow(2,i%4);
			if(i%10==3)
				s+=pow(3,i%4);
			if(i%10==8)
				if(i%4==0)
					s+=6;
				else s+=pow(8,i%4);
			s%=10;
		}
		fprintf(g,"%lld\n",s%10);
		k--;
	}
	fclose(f);
	fclose(g);
	return 0;
}