Tutorial

Czy program musi gadać?

Po poprawieniu błędu powstał program, który już w pełni jest poprawny. Można go zatem "upiększyć":

var
  d,n,i : longint;
  f : array[0..20000] of longint;

begin
  write('Podaj liczbe testow: ');
  readln(d);
  while (d>0) do
  begin
    d:=d-1;
    write('Podaj N: ');
    readln(n);
    f[0]:=0; f[1]:=1;
    for i:=2 to n do f[i]:=(f[i-1]+f[i-2]) mod 10000;
    write('Wynikiem jest: ');
    writeln(f[n]);
  end;
end.

Niestety, wysłanie takiego programu spowoduje, że Sprawdzarka znów zwróci ocenę:

Wrong Answer

Absolutnie nie wolno upiększać programów w taki sposób! Każdy tego typu informacyjny napis jest wypisywany na standardowe wyjście i powoduje, że wynik działania programu jest inny, niż zostało to zdefiniowane w treści zadania. Program powinien wypisywać tylko i wyłącznie to, co zostało określone w treści.

Pamiętajcie, że Sprawdzarka jest dość głupia (w końcu to automat). Nie próbujcie z nią rozmawiać ;).