Cod sursa(job #175276)

Utilizator tzipleatudTudor Tiplea tzipleatud Data 9 aprilie 2008 19:58:07
Problema Cifra Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 2.11 kb
Program info2;
var
  n,t,i,s,uc,j,k:longint;
  fi,fo:text;
begin
  assign(fi,'cifra.in');reset(fi);
  assign(fo,'cifra.out');rewrite(fo);
  readln(fi,t);
  for i:=1 to t do
    begin
      readln(fi,n);
      s:=0;
      for j:=1 to n do
        begin
          uc:=j mod 10;
          case uc of
            1: s:=(s+1) mod 10;
            2: begin k:=j mod 4; case k of
                                   0: s:=(s+6) mod 10;
                                   1: s:=(s+2) mod 10;
                                   2: s:=(s+4) mod 10;
                                   3: s:=(s+8) mod 10;
                                  end;end;
            3: begin k:=j mod 4; case k of
                                   0: s:=(s+1) mod 10;
                                   1: s:=(s+3) mod 10;
                                   2: s:=(s+9) mod 10;
                                   3: s:=(s+7) mod 10;
                                  end;end;
            4: begin k:=j mod 2; case k of
                                   0: s:=(s+6) mod 10;
                                   1: s:=(s+4) mod 10;
                                  end;end;
            5: s:=(s+5) mod 10;
            6: s:=(s+6) mod 10;
            7: begin k:=j mod 4; case k of
                                   0: s:=(s+1) mod 10;
                                   1: s:=(s+7) mod 10;
                                   2: s:=(s+9) mod 10;
                                   3: s:=(s+3) mod 10;
                                  end;end;
            8: begin k:=j mod 4; case k of
                                   0: s:=(s+6) mod 10;
                                   1: s:=(s+8) mod 10;
                                   2: s:=(s+4) mod 10;
                                   3: s:=(s+2) mod 10;
                                  end;end;
            9: begin k:=j mod 2; case k of
                                   0: s:=(s+1) mod 10;
                                   1: s:=(s+9) mod 10;
                                  end;end;
           end;
        end;
      writeln(fo,s);
    end;
  close(fi); close(fo);
end.