Pagini recente » Cod sursa (job #403967) | Cod sursa (job #334328) | Cod sursa (job #1497186) | Cod sursa (job #279942) | Cod sursa (job #1769831)
#include <stdio.h>
int v[4][10];
void initial(){
v[0][0]=v[1][0]=v[2][0]=v[3][0]=0;
v[0][1]=v[1][1]=v[2][1]=v[3][1]=1;
v[0][2]=6;
v[1][2]=2;
v[2][2]=4;
v[3][2]=8;
v[0][3]=1;
v[1][3]=3;
v[2][3]=9;
v[3][3]=7;
v[0][4]=v[2][4]=6;
v[1][4]=v[3][4]=4;
v[0][5]=v[1][5]=v[2][5]=v[3][5]=5;
v[0][6]=v[1][6]=v[2][6]=v[3][6]=6;
v[0][7]=1;
v[1][7]=7;
v[2][7]=9;
v[3][7]=3;
v[0][8]=6;
v[1][8]=8;
v[2][8]=4;
v[3][8]=2;
v[0][9]=v[2][9]=1;
v[1][9]=v[3][9]=9;
}
int main(){
FILE *fin,*fout;
fin=fopen("cifra.in","r");
fout=fopen("cifra.out","w");
int i,j,t,s,rest,ult,penult,exp;
char ch;
initial();
fscanf(fin,"%d%c",&t,&ch);
for(i=1;i<=t;i++){
ult=0;
penult=0;
ch=fgetc(fin);
while(ch>='0'&&ch<='9'){
penult=ult;
ult=ch-'0';
ch=fgetc(fin);
}
s=0;
rest=penult*10+ult;
exp=(penult*10+ult)%4;
for(j=rest;j>=1;j--){
s=(s+v[exp][j%10])%10;
exp=(exp+3)%4;
}
fprintf(fout,"%d\n",s);
}
fclose(fin);
fclose(fout);
return 0;
}