-
V češtině máme
různé části řeči.
-
Podstatná jména, přídavná jména,
předložky a slovesa.
-
Pak máme hromadu pravidel,
-
která nám pomáhají poskládat
všechny části řeči dohromady.
-
Mohla bych třeba říct:
"Pes knihy můj jí."
-
Určitě byste se divili,
co to má znamenat.
-
Pokud jste si
to ještě nevšimli,
-
nemůžete jen tak narvat dva podstatná
jména před jméno přídavné a sloveso.
-
Nefunguje to.
-
Co kdybych je
ale prohodila a řekla:
-
"Můj pes jí knihy."
-
Teď už tomu určitě rozumíte.
-
Mohla bych dokonce nahradit
sloveso "jí" za sloveso "hází".
-
Gramaticky by to
bylo pořád správně.
-
I když si asi těžko představíte,
jak můj pes hází knihu.
-
Při programování máme
namísto částí řeči takzvané "typy".
-
Jeden druh typů
už znáte, čísla.
-
Čísla používáme v našem
kódu pro kreslení pořád.
-
A stejně jako v češtině, někdy
použít čísla smysl dává a někdy ne.
-
Co kdybych do funkce
pro pozadí napsala "100 minus"?
-
Cokoli, co následuje po
minus by mělo být číslo.
-
Anebo aspoň něco,
co se číslu rovná.
-
Jako například
14 plus 15.
-
Co kdybych ale napsala
jen "100 mezera"?
-
Za mezeru nemůžu
ale napsat žádné číslo.
-
A to proto, že "100 mezera plus 10"
nic neznamená.
-
V programování máme
tedy další typ, boolean.
-
Jmenuje se boolean,
-
protože ho vymyslel člověk,
který se jmenoval George Boole.
-
A na rozdíl od čísla,
které může mít různé hodnoty,
-
boolean může obsahovat
jen dvě hodnoty: true nebo false.
-
A jak vidíte,
po napsání zmodrají.
-
Což znamená, že jsou to
velmi speciální slova.
-
Už jste na boolean narazili
a to aniž byste si to uvědomili.
-
U podmíněných příkazů.
-
Pojďme si je
rychle připomenout.
-
Vytvořím proměnnou
"number" s číslem 40.
-
Teď napíšu
podmíněný příkaz.
-
Pokud je "number" menší než 50,
vykreslí se tato první elipsa.
-
Teď to jenom překopíruji
do podmíněného příkazu.
-
Kód odsadím a to tak,
že vše označím a zmáčknu tab.
-
Čili náš příkaz nyní říká:
-
Pokud je "number" menší než 50, což je,
nakreslíme vrchní elipsu.
-
V případě, že mám číslo větší než 50,
vrchní elipsa jednoduše zmizí.
-
Čili tento výraz uvnitř závorek
je vlastně booleanový výraz.
-
Nezapomeňte, matematickým výrazem
je cokoli, co se rovná číslu.
-
Například 3 plus 2
plus 4 krát 8.
-
Booleanovým výrazem je cokoli,
co se rovná booleanu.
-
Dobrým způsobem, jak zjistit,
zda se výraz rovná booleanu,
-
je vložit před něj slovo "je"
a zeptat se na něj jako na otázku.
-
Pokud to zní jako ano/ne otázka,
pak se jedná o booleanový výraz.
-
Tady se můžeme zeptat:
Je "number" menší než 50?
-
Ano, ano je.
-
A tím pádem se
jedná o booleanový výraz.
-
Na druhou stranu,
co kdybych měla 4 plus 4?
-
Zkusila bych se zeptat:
Je 4 plus 4?
-
Ne, není to boolean.
-
Zpět k podmíněnému příkazu.
-
Mezi tyto závorky
můžu napsat cokoli.
-
Musí se ale jednat o boolean
anebo o booleanový výraz.
-
Mohla bych například napsat "if true"
a elipsa by se vykreslovala pořád.
-
Anebo bych mohla napsat "if false"
a elipsa by se vůbec neobjevila.
-
Dále bych mohla napsat
"if 3 je menší než 4".
-
To je booleanový výraz,
který bude mít vždy hodnotu "true".
-
To je ale celkem zbytečné,
elipsa se totiž objeví vždy.
-
Nebo 3 je menší než 4,
což bude mít vždy hodnotu "false".
-
Dále můžu také přidělit
boolean proměnným.
-
Vytvořím si novou proměnnou "var"
a nazvu ji "WinstonIsCool".
-
A přidělím jí booleanovou hodnotu,
čili true nebo false.
-
Řekněme, že "true",
protože Winston je super.
-
A protože proměnná nyní
obsahuje booleanovou hodnotu,
-
můžu ji zkopírovat a vložit
do tohoto podmíněného příkazu.
-
A jak vidíte, elipsa se vykresluje,
protože hodnota WinstonIsCool je "true".
-
Mohla bych také nahradit
toto za booleanový výraz.
-
Například: 2 je menší než 4.
-
Pokud vytvoříte proměnnou, která
má mít booleanovou hodnotu,
-
měli byste jí dát jméno,
které popisuje podmínku pro "true".
-
Dobrý způsobem, jak si jméno ověřit
je vložit ho do podmíněného příkazu.
-
Tak zkontrolujete, zda jako
podmínka dává smysl.
-
Zapomeňte na to,
že Winston je cool.
-
To už dávno víme.
-
Řekněme, že mám
proměnnou "muffins".
-
Takže "if muffins".
-
To mi nic moc neříká.
-
Jako jméno proměnné
je to tedy nevhodné.
-
Mohla bych ale napsat
"if muffinsAreBaking".
-
To by tedy říkalo:
-
Když je tato proměnná "true",
muffiny se pečou.
-
A neptejte se mě na muffiny,
o to tady vůbec nejde.
-
Teď vrátíme zpět výraz
"if ‚number‘ je menší než 50".
-
Nyní se podívejme
na další booleanové výrazy.
-
Doposud jste viděli
"menší než" a "větší než".
-
Můžete ale zadat i hodnotu
"menší nebo rovno".
-
Zkusme "if number je
menší nebo rovno 48".
-
Zároveň můžeme napsat
"if number je větší nebo rovno 48".
-
Pokud tomu tak je,
nakreslíme vrchní elipsu vpravo.
-
Teď to odsadíme.
-
A pokud byste chtěli zjistit,
zda jsou si dva čísla přesně rovna,
-
můžete napsat "number tři
rovnítka a číslo 48."
-
Tento výraz s rovnítky je více
podobný tomu z matematiky.
-
Akorát namísto jednoho rovnítka
používáme tři za sebou.
-
Trošku přehnané, že?
-
A na závěr máme výraz pro zjištění,
zda si dva čísla vůbec nejsou rovna.
-
Můžete napsat "if number
vykřičník a dva rovnítka 48".
-
V tom případě
nakreslíme poslední elipsu.
-
Když se podíváme nahoru,
uvidíme, že "number" je 48.
-
Je tedy menší
nebo rovno 48.
-
Kvůli tomu se vykresluje
vrchní levá elipsa.
-
Zároveň je větší
nebo rovno 48.
-
Zároveň se rovná 48.
-
Ale současně není
nerovno číslu 48.
-
A kvůli tomu nemáme
spodní pravou elipsu.
-
A pokud se trochu
pohráme s "number",
-
bude se měnit to,
které elipsy se vykreslí.
-
Teď už znáte boolean!
-
A stejně jako matematické výrazy,
-
i booleanové výrazy mohou
být hodně komplikované.
-
O tom si ale
povíme příště.