Pagini recente » Cod sursa (job #556508) | Cod sursa (job #2523112) | Cod sursa (job #854594) | Cod sursa (job #2191153) | Cod sursa (job #969259)
Cod sursa(job #969259)
#include <cstdio>
#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;
scanf ("%c", &v[0]);
i=1;
while (v[i-1]!='\n'){
scanf("%c", &v[i]);
i++;
}
i=i-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 {
cifra=v[i-1]*7;
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;
}