Cod sursa(job #1601913)

Utilizator guideamarinGuidea Marin guideamarin Data 16 februarie 2016 12:38:29
Problema Cifra Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.42 kb
program cifram;
var i,a,b,n,k,ra: integer; f1,f2:text;s:string;
begin
assign(f1,'cifra.in');assign(f2,'cifra,out');
reset(f1);rewrite(f2);
readln(f1,n);
for i:=1 to n do
begin   a:=0;b:=0;
readln(f1,s);
k:=length(s);
if k>1 then begin b:=ord(s[k-1])-48; a:=ord(s[k])-48; end else a:=ord(s[k])-48;
ra:=((b*7) mod 10);
if b mod 2=0 then
                  begin
                  if a=1 then  ra:=(ra+1) mod 10;
                   if a=2 then  ra:=(ra+5) mod 10;
                   if a=3 then  ra:=(ra+2) mod 10;
                    if a=4 then  ra:=(ra+8) mod 10;
                    if a=5 then  ra:=(ra+3) mod 10;
                    if a=6 then  ra:=(ra+9) mod 10;
                    if a=7 then  ra:=(ra+2) mod 10;
                    if a=8 then  ra:=(ra+8) mod 10;
                    if a=9 then  ra:=(ra+7) mod 10;
                    end else
                     begin
                  if a=1 then  ra:=(ra+1) mod 10;
                   if a=2 then  ra:=(ra+7) mod 10;
                   if a=3 then  ra:=(ra+0) mod 10;
                    if a=4 then  ra:=(ra+6) mod 10;
                    if a=5 then  ra:=(ra+1) mod 10;
                    if a=6 then  ra:=(ra+7) mod 10;
                    if a=7 then  ra:=(ra+4) mod 10;
                    if a=8 then  ra:=(ra+8) mod 10;
                    if a=9 then  ra:=(ra+7) mod 10;
                    end;
writeln(f2,ra);
 end;
 close(f1);close(f2);
 end.