Pagini recente » Cod sursa (job #3199753) | Cod sursa (job #2895994) | Cod sursa (job #1422466) | Cod sursa (job #2070186) | Cod sursa (job #114652)
Cod sursa(job #114652)
#include<stdio.h>
int intreg(char a)
{
if (a=='0') return 0;
if (a=='1') return 1;
if (a=='2') return 2;
if (a=='3') return 3;
if (a=='4') return 4;
if (a=='5') return 5;
if (a=='6') return 6;
if (a=='7') return 7;
if (a=='8') return 8;
if (a=='9') return 9;
return 0;
}
/*char caracter(int a)
{
switch (a)
{
case 0:return '0';break;
case 1:return '1';break;
case 2:return '2';break;
case 3:return '3';break;
case 4:return '4';break;
case 5:return '5';break;
case 6:return '6';break;
case 7:return '7';break;
case 8:return '8';break;
case -1:return '-1';break;
}
return 0;
}*/
int main()
{
FILE *fin,*fout;
fin= fopen ("cifra.in","r");
fout= fopen ("cifra.out","w");
char *a;
int t,v[100],i;
for (i=0;i<=99;i++) v[i]=-1;
fscanf(fin,"%d",&t);
int s,n,k;
int m,p,r;
for (i=1;i<=t;i++)
{
fscanf (fin,"%s",a);
s=0;
for (int j=1;;j++) if (a[j]=='\0')
{
n=j-1;
break;
}
if (n==0) r=intreg(a[n]);
else r=intreg(a[n-1])*10+intreg(a[n]);
if (v[r]>=0) fprintf (fout,"%d\n",v[r]);
else
{
for (k=1;k<=r;k++)
{
p=1;
for (m=1;m<=k;m++) p=(p*k)%10;
s=(s+p)%10;
}
v[r]=s;
fprintf (fout,"%d\n",s);
}
}
return 0;
}