Pagini recente » Cod sursa (job #1611900) | Cod sursa (job #2829314) | Cod sursa (job #1157645) | Cod sursa (job #886951) | Cod sursa (job #870933)
Cod sursa(job #870933)
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
using namespace std;
int main()
{
FILE* f = fopen("cifra.in","r");
FILE *g = fopen("cifra.out","w");
int t;
fscanf(f,"%d",&t);
char numar[200];
int count=1;
int ultima_cifra[100];
int i=0;
int ucf=0;
while(i<=99)
{
int cifra=i%10;
switch(cifra)
{
case 2:
if(i%4==0)
{
ucf=(ucf+6)%10;}
else if(i%4==1)
{
ucf=(ucf+2)%10;
}
else if(i%4==2)
{
ucf=(ucf+4)%10;
}
else
{
ucf=(ucf+8)%10;
}
break;
case 3:
if(i%4==0)
{
ucf=(ucf+1)%10;}
else if(i%4==1)
{
ucf=(ucf+3)%10;
}
else if(i%4==2)
{
ucf=(ucf+9)%10;
}
else
{
ucf=(ucf+7)%10;
}
break;
case 4:
if(i%2==0)
{
ucf=(ucf+6)%10;}
else
{
ucf=(ucf+4)%10;}
break;
case 0: case 1: case 5: case 6:
ucf=(ucf+cifra)%10;
break;
case 7:
if(i%4==0)
{
ucf=(ucf+1)%10;}
else if(i%4==1)
{
ucf=(ucf+7)%10;
}
else if(i%4==2)
{
ucf=(ucf+9)%10;
}
else
{
ucf=(ucf+3)%10;
}
break;
case 8:
if(i%4==0)
{
ucf=(ucf+6)%10;}
else if(i%4==1)
{
ucf=(ucf+8)%10;
}
else if(i%4==2)
{
ucf=(ucf+4)%10;
}
else
{
ucf=(ucf+2)%10;
}
break;
case 9:
if(i%2==0)
{
ucf=(ucf+1)%10;}
else
{
ucf=(ucf+9)%10;}
}
ultima_cifra[i] = ucf;
i++;
}
while(count<=t)
{
fscanf(f,"%s",numar);
int i=1;
int ucf=0;
int cf;
int length = strlen(numar);
if(length>1)
cf = (numar[length-1]-'0')+(numar[length-2]-'0')*10;
else
cf = (numar[length-1]-'0');
fprintf(g,"%d\n",ultima_cifra[cf]);
count++;
}
}