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