Skúška z programovania pre 1i, 1MI a 1FI
14.1.2000 do
  1. Napíšte program, ktorý sa umožní hrať hru Jabĺčka:

  2. Na strome je niekoľko červených jabĺčok a pod stromom sa pohybuje vozík, do ktorého budeme zbierať tieto jabĺčka. Vozík sa pohybuje samostatne konštantnou rýchlosťou buď zľava doprava alebo opačne (vždy na kraji obrazovky zmení smer). Hrať budeme tak, že budeme myšou klikať na niektoré jabĺčka a tieto začnú padať nadol (konštantnou rýchlosťou). Ak ich pri ich páde zachytí vozík, tak sa budú voziť spolu s ním (na vozíku sa objaví číslo = počet jabĺčok na vozíku) inak sa zastavia naspodu obrazovky.
    Jabĺčka aj vozík realizujte pomocou objektov, napr. takto:
      objekt = class
        // stavové premenné, napr. rýchlosť pohybu, resp. padania
        construcor Create(...);
        procedure posun;
        procedure kresli(g:TCanvas);
      end;
      jablcko = class(objekt)
        ...
        function klik(...):boolean;
      end;
      vozik = class(objekt)
        ...
      end;
    V súbore strom.txt sú popísané jabĺčka na strome: Obrázok vozíka je v súbore vozík.bmp. Pozadie plochy, na ktorej sú jabĺčka aj vozík, je v súbore plocha.bmp. Všetky bitmapy s jabĺčkami aj vozík majú priesvitnú bielu farbu.
  1. Napíšte program, ktorý umožní zahrať sa na počítači túto hru:
  2. Na kreslenie kvetinky zadefinujte triedu mojaKor:
      mojaKor = class(kor)
        farba:boolean;   // false = zelená, true = červená
        constructor Create(x,y:integer; ffarba:boolean);
        procedure lupen;
        procedure kvet;
        procedure zmen;
      end;
    Metóda lupen kreslí lupeň kvetu - sú to dve navzájom spojené štvrťkružnice, pričom predpokladáme, že kruh je 24-uholník so stranou 3. Metóda kvet kreslí kvet, ktorý sa skladá zo stonky dĺžky 40, na ktorej sú dva lístočky (rovnakého tvaru ako lupene) a samotné okvetie sa skladá zo 7 lupienkov, ktoré sú rovnomerne rozostavené. Metóda zmen zmení farbu kvetu (premenná farba) a prekreslí kvet novou farbou. Všetkých 36 korytnačiek - kvetov je prvkami velaKor. Kurzor realizujte ako ďalšiu korytnačku, ktorej tvar je modrá hrubá vodorovná čiara.
     
     
© AB
Skúška Z09/2000