Cod sursa(job #288969)

Utilizator andreyusschiopu andrei andreyus Data 26 martie 2009 11:42:37
Problema Cifra Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 2.82 kb
var
    f,g:text;
    a,s,nr,aux,t:byte;
begin
assign(f,'cifra.in');
reset(f);
readln(f,t);
close(f);
s:=0;
a:=1;
nr:=1;
assign(g,'cifra.out');
rewrite(g);
while t<>0 do
begin
       if a=1 then
          s:=(s+a) mod 10
        else
           if a=5 then
             s:=(s+a) mod 10
           else
             if a=6 then
                s:=(s+a) mod 10
             else
               if a=4 then
                  s:=(s+6) mod 10
               else
                if a=9 then
                   s:=(s+a)mod 10
                else
                   if a=2 then
                     begin
                         if nr=0 then
                           s:=(s+6) mod 10
                         else
                            if nr=1 then
                               s:=(s+2) mod 10
                            else
                              if nr=2 then
                                 s:=(s+4) mod 10
                              else
                                     s:=(s+8) mod 10
                     end
                   else
                     if a=3 then
                      begin
                          if nr=0 then
                             s:=(s+1) mod 10
                          else
                           if nr=1 then
                              s:=(s+3) mod 10
                           else
                             if nr=2 then
                                s:=(s+9) mod 10
                             else
                                s:=(s+7) mod 10
                      end
                    else
                      if a=7 then
                      begin
                          if nr=0 then
                             s:=(s+1) mod 10
                          else
                             if nr=1 then
                                s:=(s+7) mod 10
                             else
                                 if nr=2 then
                                   s:=(s+9) mod 10
                                 else
                                     s:=(s+3) mod 10;
                       end
                      else
                         if a=8 then
                         begin
                          if nr=0 then
                            s:=(s+6) mod 10
                          else
                             if nr=1 then
                                s:=(s+8) mod 10
                             else
                               if nr=2 then
                                  s:=(s+4) mod 10
                               else
                                     s:=(s+2) mod 10
                         end;
         dec(t);
       writeln(g,s);
       a:=(a+1) mod 10;
       if nr=3 then
          nr:=0
       else
          inc(nr);

end;
close(g);
end.