Cod sursa(job #8628)

Utilizator deea_yo_006Stefan Andreea Lorelei deea_yo_006 Data 25 ianuarie 2007 10:24:12
Problema Cifra Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.23 kb
var i,j,m,suma:longint;
n:integer;
f,g:text;
function rez2(x:longint):longint;
var y,h,rez:longint;
begin
y:=x;
x:=x mod 10;
if x=0 then rez:=0;
if x=1 then rez:=1;
if x=2 then begin
h:=y mod 4;
if h=1 then rez:=2;
if h=2 then rez:=4;
if h=3 then rez:=8;
if h=0 then rez:=6;
end;
if x=4 then begin
h:=y mod 2;
if h=1 then rez:=4;
if h=0 then rez:=6;
if h=7 then begin
h:=y mod 4;
if h=1 then rez:=3;
if h=2 then rez:=9;
if h=3 then rez:=7;
if h=0 then rez:=1;
end;
if x=4 then begin
h:=y mod 2;
if h=1 then rez:=4;
if h=0 then rez:=6;
end;
if x=5 then rez:=5;
if x=6 then rez:=6;
if x=7 then begin
h:=y mod 4;
if h=1 then rez:=7;
if h=2 then rez:=9;
if h=3 then rez:=3;
if h=4 then rez:=1;
end;
if x=8 then begin
h:=y mod 4;
if h=1 then rez:=8;
if h=2 then rez:=4;
if h=3 then rez:=2;
if h=0 then rez:=6;
end;
if x=9 then begin
h:=y mod 2;
if h=1 then rez:=9;
if h=0 then rez:=1;
end;
rez2:=rez;
end;
begin
assign(f,cifra.out');
rewrite(f);
close(f);
assign(f,cifra.in');
reset(f);
readln(f,m);
j:=0;
while j<m do
begin
readln(f,n);
inc(j);
suma:=0;
for i:=1 to n do
suma:=(suma+rez2(i)) mod 10;
assign(g,'cifra.out);
append(g);
writeln(g,suma mod 10);
close(g);
end;
close(f);
end.