program mokytojo_diena;
{ 148 u‘davinys }

  function mok_diena (mt: integer): integer;
  { rand… kuri… m‚nesio dien… duotaisiais metais ˛ven‡iama }
  { mokytojo diena }
    var i, diena, metai, posl: integer;

    function kel (m: integer): boolean;
    { ar metai m keliamieji }
    begin
      kel := (m mod 400 = 0) or
             (m mod 100 <> 0) and
             (m mod 4 = 0)
    end; { kel }

  begin
    { nustatysime, kuri… savait‚s dien… prasideda duotieji metai }
    diena := 6; metai := 2000;
    for i := metai-1 downto mt do
      begin
        if kel (i) { randame poslink¨ }
           then posl := 2
           else posl := 1;
        if diena - posl < 1
           then diena := diena + 7 - posl
           else diena := diena - posl;
      end;
    { rasime, kuri… savait‚s dien… prasideda spalis }
    if kel (mt)
       then if diena + 1 > 7
               then diena := 1
               else diena := diena + 1;
    { rasime pirm…j¨ spalio sekmadien¨ }
    mok_diena := 7 - diena + 1
  end; { mok_diena }

  var mt, dn: integer;
begin
  write ('­veskite metus: ');
  readln (mt);
  dn := mok_diena (mt);
  writeln ('Mokytojo diena ˛ven‡iama spalio ', dn, ' dien….');
end.