1. sada domácich zadaní

Najneskorší termín odovzdania: 24.2.2013 (nedeľa) o 21:00
Odovzdávané súbory: Fraktalka.java, PoloveAlgoritmy.java.

Doplňujúce požiadavky:

  • 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),
  • komentovaný zdrojový kód je vítaný

Fraktálový šesťuholník (1 bod)

V triede Fraktalka, ktorá rozširuje triedu Turtle, vytvorte metódu sestuholnik, ktorá nakreslí fraktál s nasledujúcim tvarom:

Parameter u určuje "úroveň" fraktálu, parameter d dĺžku strany šesťuholníka. Kreslite aj časti fraktálu, ktoré nie je vidieť.

public void sestuholnik(int u, double d) {

}

Poznámky:

  • V obrázku, ktorý je výsledkom evaluácie v Moodle, je očakávaný výstup nakreslený červenou farbou. V korektnom riešení by ste tak nemali vidieť nič červené, keďže očakávaný výstup je prekreslený výstupom odoslaného riešenia, ktorý je kreslený čiernou farbou.

Polia vo svete bez cyklov (3 body)

Preprogramujte metódu paritaNaStriedacku tak, aby robila to isté, ale bez použitia cyklov (while, for), metód JCF a triedy Arrays. Vaše riešenie nech funguje aj v prípade, že vstupné pole je veľké (napr. 1000000-prvkové). Môžete predpokladať korektné vstupy (p != null, 0 <= odIdx <= poIdx < p.length).

public class PoloveAlgoritmy {

        public static boolean paritaNaStriedacku(int[] p, int odIdx, int poIdx) {
                for (int i = odIdx + 1; i <= poIdx; i++)
                        if (p[i - 1] % 2 == p[i] % 2)
                                return false;

                return true;
        }
}

Poznámky:

  • Pri odovzdávaní triedy PoloveAlgoritmy skontrolujte, že neimportujete žiadne triedy z knižnice JPAZ2, nakoľko tá nie je dostupná pre túto úlohu.
  • Preprogramujte = zmeňte len príkazy v tele metódy, t.j. do triedy PoloveAlgoritmy nepridávajte žiadne iné pomocné metódy či statické premenné.