11 - Vetvenie programu

Teraz budeme chvíľu robiť bez kreslenia, aj bez setup a draw. Ale o chvíľu sa vrátime naspäť k grafike.

Úloha 1

Počítač dokáže porovnávať čísla. Vytvorte si nový prázdny skeč, bez setup a draw a napíšte do neho:

println(1<2);

Pozrite sa, čo po spustení vypíše do konzoly:

true

Počítač nám odpovedal na otázku, či je 1 menšie ako 2. Je to pravda, preto nám odpovedal true.

Vyskúšajte, čo napíše, keď sa ho namiesto 1<2 spýtame, či 3 je menšie ako 4.

Úloha 2

Vyskúšaj takto porovnať aj zložitejšie výrazy, aké výsledky počítač vypísal:

  • 1+2 > 3

  • -1 > -2

  • (1 + 2) * 3 < 1 + 2*3

Úloha 3

Zistite pomocou programu, čo ma za 1 rok stojí viac peňazí? Platiť za kávu každý deň 1.25 EUR alebo platiť za internet 38 eur mesačne?

Úloha 4

Porovnávať vieme okrem čísel aj premenné a hocijaké výrazy s premennými. Vytvorte si v program premennú a a priraďte do nej hodnotu 17. Vyskúšajte, tieto porovnania:

  • a < 11

  • a * a * a > 5000

  • a + a/2 + a/3 + a/4 < 3 * a

Úloha 5

Vytvoríme spolu program, ktorý podľa teploty povie, či je vonku teplo alebo zima. Do premennej teplota priradíme číslo. A chceme, aby počítač pri teplote väčšej ako 20 stupňov vypísal, že je teplo. Inak nech vypíše, že je zima.

Urobíme to takto:

int teplota = 25;
println("Teplota je", teplota, "stupnov.");

if (teplota > 20)
{
  println("Dnes je teplo.");
}
else
{
  println("Dnes je zima.");
}

Ak ste program napísali správne, vypíše:

Teplota je 25 stupnov.
Dnes je teplo.

Úloha 6

Zmeň v programe hodnotu teploty z 25 na 10. Čo vypíše zmenený program?

Ako to funguje?

Príkazy if () .... else ... tvoria takzvané vetvenie programu.

Do zátvoriek if( ) sa píše podmienka, podľa ktorej sa počítač rozhodne, čo vykoná.

Ak podmienka je splnená, ak je pravdivá, tak sa vykoná ten blok programu, ktorý je hneď za if . Tento blok je zavretý do brčatých zátvoriek { ... }.

Ak podmienka nie je splnená, vykoná sa ten blok, ktorý je za else.

Úloha 7

Uprav program z Úlohy 5 tak, aby pre záporné teploty vypísal Zober si rukavice a inak nech vypíše Rukavice ti netreba.

Over si, či program funguje pre rôzne hodnoty premennej teplota. Aj kladné, aj záporné. Napríklad:

Teplota je -5 stupnov
Zober si rukavice.

alebo:

Teplota je 14 stupnov
Rukavice ti netreba.

Čo program vypíše pre teplotu rovnú 0?

Úloha 8

Chceme poslať list. Vytvorte program, ktorý nám poradí s cenou listu. Na začiatku programu do premennej hmotnost priraďte hmotnosť listu v gramoch. Použi vetvenie, nech program:

  • pre listy do 50g vypíše "Zaplatis 1.25 EUR"

  • inak vypíše "Zaplatis 1.4 EUR".

Overte, že program správe počíta celu listu pre hmotnosti 30, 50 a 100 gramov.

Úloha 9

Ideme na zmrzlinu. Cena za jeden za kopček zmrzliny je 1.50 eura. Zmrzlinár však ponúka zľavu: ak vezmeme viac ako 5 kopčekov, cena za každý kopček bude 1.30 eura. Vytvor program, ktorému na začiatku priradíš do premennej pocet počet kopčekov a on vypíše výslednú cenu. Napríklad:

Za 5 kopcekov zmrzliny zaplatis:
7.5 EUR

Overte, že program funguje správne pre 4, 5 a 6 kopčekov.

Úloha 10

Už ideme kresliť, ale zatiaľ stále ešte bez setup a draw. Vyrobíme si semafor. Vytvorte nový skeč. Do premennej cas priraďte nejaký počet sekúnd. Ak je toto číslo menšie ako 30, nakreslí sa červené svetlo, inak sa nakreslí zelené:

Výstup pre cas=5
Výstup pre cas=50

Úloha 11

Uprav svoj program tak, aby bolo vidno aj ostatné svetlá, ktoré práve nesvietia:

Výstup pre cas=5
Výstup pre cas=50

Úloha 12

Máme škatuľu v tvare obdĺžnika s dĺžkami strán, ktoré sú uložené v premenných a, b. Škatuľu chceme položiť vždy na ležato. Vytvor program, v ktorom na začiatku priradíš do premenných a, b rozmery. Program nakreslí škatuľu tak, aby vždy ležala dlhšou stranou na zemi. Over, že program funguje pre rôzne kombinácie hodnôt premenných a, b.

Výstup pre a=50, b=100
Výstup pre a=200, b=70

Úloha 13

Vytvorte skeč na kreslenie dvojdielneho snehuliaka. V premenných v1 a v2 sú uložené veľkosti gulí. Napíšte program tak, aby vždy bola vykreslená menšia guľa na väčšej. Overte si funkčnosť na rôznych kombináciách veľkostí.

v1=70, v2=40
v1=20, v2=100

Úloha 14

Konečne sa vrátime do dynamického kreslenia so setup a draw. Vytvorte skeč, ktorý pri kliknutí myšou nakreslí nejaký tvar. Ak bolo kliknuté v ľavej polovici obrazovky, tak nakreslí krúžok. Inak nakreslí štvorček:

Úloha 15 *

Doplňte svoj predošlý program tak, aby v hornej polovici obrazovky boli útvary modré a v dolnej polovici zelené.

Last updated