Cod sursa(job #11841)

Utilizator omu_salcamtache tudor omu_salcam Data 1 februarie 2007 21:49:32
Problema Cifra Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.3 kb
#include<stdio.h>
#include<string.h>
long a,b,n,i,j,t,v[222];
FILE *f1,*f2;
char s[222],x[222];
int main(){
f1=fopen("cifra.in","r");
f2=fopen("cifra.out","w");
fscanf(f1,"%ld",&t);

for(j=1;j<=t;j++){
if(j==1){
	fgets(s,1111,f1);
}
strcpy(s,x);
fgets(s,1111,f1);
n=strlen(s);
if(j<t){
	n--;
}
for(i=0;i<n;v[i+1]=s[i]-48,i++);
a=0;
b=v[n-1]*10+v[n];
//* 1 *
a=a+v[n-1]+1;
a=a%10;

//* 2 *
if(b%20>=2){
	a=a+4;
}
if(b%20>=12){
	a=a+6;
}
a=a%10;

//* 3 *
if(b%20>=3){
	a=a+7;
}
if(b%20>=13){
	a=a+3;
}
a=a%10;

//* 4 *
if(b%50>=4){
	a=a+6;
}
if(b%50>=14){
	a=a+6;
}
if(b%50>=24){
	a=a+6;
}
if(b%50>=34){
	a=a+6;
}
if(b%50>=44){
	a=a+6;
}
a=a%10;

//* 5 *
if(b%20>=5){
	a=a+5;
}
if(b%20>=15){
	a=a+5;
}
a=a%10;

//* 6 *
if(b%20>=6){
	a=a+6;
}
if(b%20>=16){
	a=a+6;
}
a=a%10;

//* 7 *
if(b%20>=7){
	a=a+3;
}
if(b%20>=17){
	a=a+7;
}
a=a%10;


//* 8 *
if(b%20>=8){
	a=a+6;
}
if(b%20>=18){
	a=a+4;
}
a=a%10;

//* 9 *
if(b>=9){
	a=a+9;
}
if(b>=19){
	a=a+9;
}
if(b>=29){
	a=a+9;
}
if(b>=39){
	a=a+9;
}
if(b>=49){
	a=a+9;
}
if(b>=59){
	a=a+9;
}
if(b>=69){
	a=a+9;
}
if(b>=79){
	a=a+9;
}
if(b>=89){
	a=a+9;
}
if(b>=99){
	a=a+9;
}
a=a%10;
fprintf(f2,"%ld",a);
if(j!=t){
	fprintf(f2,"\n");
}
}
return 0;
}