Cod sursa(job #485107)
Utilizator | Data | 17 septembrie 2010 06:53:39 | |
---|---|---|---|
Problema | Cifra | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.45 kb |
#include <cstdio>
#include <string.h>
int main ()
{
int magic[]={0, 1, 5, 2, 8, 3, 9, 2, 8, 7, 0, 1, 7, 0, 6, 1, 7, 4, 8, 7}, T, n, k1, k2;
FILE *in=fopen("cifra.in", "r"), *out=fopen("cifra.out", "w");
char nbr[101];
fscanf(in, "%d", &T);
while(T--)
{
fscanf(in, "%s", nbr);
n = strlen(nbr);
k1=(nbr[n-1]-'0');
k2=(n<=1?0:(nbr[n-2]-'0'));
fprintf(out, "%d\n", (k2*7+ (k2%2?magic[10+k1]:magic[k1]))%10 );
}
return 0;
}