2. sada domácich zadaní

Najneskorší termín odovzdania: 17.10.2011 (pondelok) o 21:00
Odovzdávaný súbor: ZadanaKorytnacka.java

Cieľom tejto sady domácich zadaní je vytvoriť triedu ZadanaKorytnacka, ktorá rozširuje triedu Turtle a ktorá obsahuje nižšie predpísané metódy.

Doplňujúce požiadavky:

  • vo vytvorených metódach nevyužívajte metódu center (v "spusťači" v metóde main ho použiť samozrejme môžete),
  • po vykonaní každej z metód nech je korytnačka na pozícii, kde bola pred jej vykonaním, a je natočená tým smerom, akým bola pred jej vykonaním,
  • nepredpokladajte bielu farbu pozadia kresliacej plochy (korytnačka musí nakresliť korektný obrázok pri akejkoľvek farbe kresliacej plochy),
  • riešenia, ktoré nebude možné skompilovať (t.j. riešenia so syntaktickými chybami) nebudú hodnotené,
  • zdrojový kód správne naformátujte (CTRL+SHIFT+F),
  • očakáva sa vhodne okomentovaný zdrojový kód
  • pri riešení používajte len poznatky, ktoré boli súčasťou 2. prednášky a na ňu nadväzujúcich cvičení.

Švédska vlajka (4 body)

Naučte korytnačky triedy ZadanaKorytnacka metódu svedskaVlajka, ktorá pomocou náhodnej pochôdzky (viď 2. praktické cvičenie) nakreslí vlajku Švédska. Stred vlajky nech je na aktuálnej pozícii korytnačky, rozmery vlajky a počet náhodných krokov pochôdzky sú určené parametrami metódy. Vlajka nech je rovnobežná so stranami kresliacej plochy. Po skončení metódy nech sú natočenie korytnačky a jej pozícia rovnaké, ako boli pred zavolaním metódy.

public void svedskaVlajka(int pocetKrokov, double sirka, double vyska)

Pyramída (4 body)

Naučte korytnačky triedy ZadanaKorytnacka metódu pyramida, ktorá nakreslí pyramídu z tehličiek so zadanými rozmermi a so zadaným počtom radov. Parametrami metódy sú:

  • sirka, vyska - šírka a výška tehličky, z ktorej je postavená pyramída
  • pocetRadov - počet radov pyramídy

Pre nakreslenú pyramídu platí:

  • jej základňa ("spodok") je určená aktuálnou pozíciou korytnačky, pričom korytnačka stojí presne v jej strede
  • vrch pyramídy je v smere aktuálneho natočenia korytnačky

Riešenie vytvorte použitím pomocných metód na nakreslenie jednej tehličky (tehlicka) a jedného celého radu tehličiek (radTehliciek).

/*
 * Nakresli jednu tehlicku so zadanymi rozmermi
 */

public void tehlicka(double sirka, double vyska) {

}

/*
 * Nakresli rad tehliciek tvoreny zadanym poctom tehliciek s rozmermi
 * urcenymi cez parametre sirka a vyska
 */

public void radTehliciek(double sirka, double vyska, int pocetTehliciek) {

}

/*
 * Nakresli pyramidu podla zadania
 */

public void pyramida(double sirka, double vyska, int pocetRadov) {

}