Pagini recente » Cod sursa (job #1855194) | Cod sursa (job #1184882) | Cod sursa (job #3218065) | Cod sursa (job #2466149) | Cod sursa (job #73365)
Cod sursa(job #73365)
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(void)
{
FILE *in,*out;
int T,i,care,x;
char N[102];//,*aux;
int v[101];
//aux=malloc(2*sizeof(char));
v[0]=0;
for(i=1;i<100;i++)
{
switch(i%10)
{
case 1:v[i]=(v[i-1]+1)%10;break;
case 2:
{
if(i%4==0)
v[i]=(v[i-1]+6)%10;
//break;
if(i%4==1)
v[i]=(v[i-1]+2)%10;
//break;
if(i%4==2)
v[i]=(v[i-1]+4)%10;
//break;
if(i%4==3)
v[i]=(v[i-1]+8)%10;
//break;
}
break;
case 3:
{
if(i%4==0)
v[i]=(v[i-1]+1)%10;
//break;
if(i%4==1)
v[i]=(v[i-1]+3)%10;
//break;
if(i%4==2)
v[i]=(v[i-1]+9)%10;
//break;
if(i%4==3)
v[i]=(v[i-1]+7)%10;
//break;
}
break;
case 4:
v[i]=(v[i-1]+6)%10;break;
case 5:
v[i]=(v[i-1]+5)%10;break;
case 6:
v[i]=(v[i-1]+6)%10;break;
case 7:
{
if(i%4==0)
v[i]=(v[i-1]+1)%10;
//break;
if(i%4==1)
v[i]=(v[i-1]+7)%10;
//break;
if(i%4==2)
v[i]=(v[i-1]+9)%10;
//break;
if(i%4==3)
v[i]=(v[i-1]+3)%10;
//break;
}
break;
case 8:
{
if(i%4==0)
v[i]=(v[i-1]+6)%10;
//break;
if(i%4==1)
v[i]=(v[i-1]+8)%10;
//break;
if(i%4==2)
v[i]=(v[i-1]+4)%10;
//break;
if(i%4==3)
v[i]=(v[i-1]+2)%10;
//break;
}
break;
case 9:
v[i]=(v[i-1]+9)%10;break;
default:
v[i]=v[i-1];break;
}
}
out=fopen("cifra.out","w");
in=fopen("cifra.in","r");
fscanf(in,"%d",&T);
fgets(N,102,in);
for(i=1;i<=T;i++)
{
fgets(N,102,in);
x=strlen(N)-1;
if(x>=2)
care=(N[x-2]-'0')*10+(N[x-1]-'0');
else
care=N[0]-'0';
fprintf(out,"%d\n",v[care]);
}
// fprintf(out,"\n\n");
// for(i=1;i<100;i++)
// fprintf(out,"%d ",v[i]);
fclose(out);
fclose(in);
return 0;
}