Cod sursa(job #282880)

Utilizator gggbbbyyyDarkMan gggbbbyyy Data 18 martie 2009 14:45:09
Problema Cifra Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.82 kb
var v,s:array[1..100]of 0..9;
    f,g:text;
    i,n,m,x,sm:integer;
    c:char;
function md4(x:integer):integer;
begin
if x mod 4=0 then
  md4:=4
else
  md4:=x mod 4;
end;

function pu(x:integer):integer;
var i,s:integer;
begin
s:=1;
for i:=1 to md4(x) do
  s:=(s mod 10)*(x mod 10);
pu:=s;
end;

begin
s[1]:=1;
for i:=2 to 100 do
  s[i]:=(s[i-1]+pu(i))mod 10;
assign(f,'cifra.in');
assign(g,'cifra.out');
reset(f);
rewrite(g);
readln(f,n);
for i:=1 to n do
  begin
    m:=0;
    read(f,c);
    while not(eoln(f)) do
      begin
        m:=m+1;
        v[m]:=ord(c)-48;
      end;
    sm:=0;
    while m>=2 do
      begin
        sm:=(sm mod 10)+s[v[m-1]*10+v[m]];
        m:=m-2;
      end;
    if m=1 then
      sm:=(sm mod 10)+s[v[m]];
    write(f,sm);
  end;
close(g);
end.

end.