Pagini recente » Cod sursa (job #323466) | Cod sursa (job #3276765) | Cod sursa (job #2909155) | Cod sursa (job #637816) | Cod sursa (job #44947)
Cod sursa(job #44947)
#include<stdio.h>
#include<stdlib.h>
int a[10][4];
void prnt(int n, int m)
{
for (int i=0;i<n;++i)
{
for (int j=0;j<m;++j) printf("%d ",a[i][j]);
printf("\n");
}
}
int main()
{
int i,j,n;
//generate table with last digit
for (i=0;i<10;i++)
{
/*
if (i==0) a[i][0]=a[i][1]=a[i][2]=a[i][3]=0;
if (i==1)
*/
if (i==0||i==5||i==6||i==1)
for (j=0;j<4;a[i][j++]=i);
}
a[2][0]=2; a[2][1]=4;a[2][2]=8;a[2][3]=6;
a[3][0]=3; a[3][1]=9;a[3][2]=7;a[3][3]=1;
a[4][0]=4; a[4][1]=6;a[4][2]=4;a[4][3]=6;
a[7][0]=7; a[7][1]=9;a[7][2]=3;a[7][3]=1;
a[8][0]=8; a[8][1]=4;a[8][2]=2;a[8][3]=6;
a[9][0]=9; a[9][1]=1;a[9][2]=9;a[9][3]=1;
//generated the matrix
prnt(10,4);
int t;
FILE *in=fopen("cifra.in","r"),*out=fopen("cifra.out","w");
fscanf(in,"%d",&t);
int s,uc,put;
for (int dan=1;dan<=t;++dan)
{
fscanf(in,"%d",&n);
s=0;
for (i=1;i<=n;++i)
{
uc=i%10; //find the last digit of n
put=i%4;
--put;
if (put==-1) put=3;// find the rest, so i can compute the power;
s+=a[uc][put];
if (s>=10) s%=10;
printf("P i=%d uc=%d put=%d s=%d\n",i,uc,put,s);
}
fprintf(out,"%d\n",s);
}
system("pause");
return 0;
}