Písomná skúška na prijímacích pohovoroch z Informatiky
Variant D
  1. Uvedená časť programu kreslí pomocou grafického pera nejaký obrázok na grafickú plochu. Na začiatku je pero umiestnené v strede grafickej plochy. Grafická procedúra linerel(dx,dy) nakreslí čiaru z momentálnej pozície (x,y) do pozície (x+dx,y+dy).
    i:=1;
    while i<=N do
      begin
        linerel(10*i,-10*i);
        linerel(10*i,10*i);
        i:=i+1;
        linerel(-10*i,10*i);
        linerel(-10*i,-10*i);
        i:=i+1;
      end;
    


  • Predpokladajme, že celočíselná aritmetika nášho počítača dokáže pracovať s ľubovoľne veľkými číslami. Zistite, aké číslo sa vypíše po ukončení nasledujúcej časti programu:
    a:=26; b:=1; c:=0;
    for i:=1 to 8 do
      begin
        a:=9*a+5;
        b:=3*b;
        c:=9*c+7;
      end;
    writeln(a-3*b*b-c*27);
    
    Pomôcka: Skúste všetky výpočty robiť v 3-ovej sústave.


  • Nasledujúci program počíta dolnú celú časť druhej odmocniny celého kladného čísla X zadaného na vstupe. V tomto programe niekto omylom nahradil všetky výskyty premennej Y identifikátorom X. Opravte program!
    var X,X:longint;
    begin
      readln(X);
      X:=0;
      while X>=0 do
        begin
          X:=X+1;
          X:=X-2*X+1;
        end;
      writeln(X-1)
    end.
    
  • Nech p je jednorozmerné celočíselné pole rôznych hodnôt. Napíšte program (Pascal, Basic, C), ktorý vypíše dĺžku najdlhšieho rastúceho súvislého úseku poľa p. (Napr. pole, ktoré obsahuje klesajúcu postupnosť čísel, má túto dĺžku 1). Program nemusí obsahovať načítanie tohoto poľa.