Pagini recente » Cod sursa (job #912224) | Cod sursa (job #950167) | Cod sursa (job #2968013) | Cod sursa (job #1303073) | Cod sursa (job #1040451)
#include <cstdio>
#include <string.h>
#include <stdlib.h>
using namespace std;
int T,i,cifra,k;
char *v = (char*) calloc (103,sizeof(char));
char *x;
int main(){
freopen("cifra.in", "r", stdin);
freopen("cifra.out", "w", stdout);
scanf ("%d", &T);
scanf ("%c", &x);
while (T>0){
cifra=0;
fgets (v, 102, stdin);
i=strlen(v)-2;
if (i==0){
while (v[i]!=0){
switch (v[i]){
case '1': cifra=cifra+1; break;
case '2': cifra=cifra+4; break;
case '3': cifra=cifra+7; break;
case '4': cifra=cifra+6; break;
case '5': cifra=cifra+5; break;
case '6': cifra=cifra+6; break;
case '7': cifra=cifra+3; break;
case '8': cifra=cifra+6; break;
case '9': cifra=cifra+9; break;
}
v[i]--;
}
}
else {
switch (v[i-1]){
case '1': cifra=7; break;
case '2': cifra=4; break;
case '3': cifra=1; break;
case '4': cifra=8; break;
case '5': cifra=5; break;
case '6': cifra=2; break;
case '7': cifra=9; break;
case '8': cifra=6; break;
case '9': cifra=3; break;
case '0': cifra=0; break;
}
if (v[i-1]%2==0){
while (v[i]!=0){
switch (v[i]){
case '1': cifra=cifra+1; break;
case '2': cifra=cifra+4; break;
case '3': cifra=cifra+7; break;
case '4': cifra=cifra+6; break;
case '5': cifra=cifra+5; break;
case '6': cifra=cifra+6; break;
case '7': cifra=cifra+3; break;
case '8': cifra=cifra+6; break;
case '9': cifra=cifra+9; break;
}
v[i]--;
}
}
else {
while (v[i]!=0) {
switch (v[i]){
case '1': cifra=cifra+1; break;
case '2': cifra=cifra+6; break;
case '3': cifra=cifra+3; break;
case '4': cifra=cifra+6; break;
case '5': cifra=cifra+5; break;
case '6': cifra=cifra+6; break;
case '7': cifra=cifra+7; break;
case '8': cifra=cifra+4; break;
case '9': cifra=cifra+9; break;
}
v[i]--;
}
}
}
printf ("%d", cifra%10);
printf ("\n");
T--;
}
return 0;
}