1 00:00:02,743 --> 00:00:05,317 V češtině máme různé části řeči. 2 00:00:05,317 --> 00:00:08,199 Podstatná jména, přídavná jména, předložky a slovesa. 3 00:00:08,309 --> 00:00:09,545 Pak máme hromadu pravidel, 4 00:00:09,545 --> 00:00:12,349 která nám pomáhají poskládat všechny části řeči dohromady. 5 00:00:12,349 --> 00:00:19,089 Mohla bych třeba říct: "Pes knihy můj jí." 6 00:00:19,341 --> 00:00:21,673 Určitě byste se divili, co to má znamenat. 7 00:00:21,923 --> 00:00:23,823 Pokud jste si to ještě nevšimli, 8 00:00:23,823 --> 00:00:27,717 nemůžete jen tak narvat dva podstatná jména před jméno přídavné a sloveso. 9 00:00:27,717 --> 00:00:28,685 Nefunguje to. 10 00:00:28,685 --> 00:00:30,484 Co kdybych je ale prohodila a řekla: 11 00:00:30,484 --> 00:00:34,426 "Můj pes jí knihy." 12 00:00:34,810 --> 00:00:36,497 Teď už tomu určitě rozumíte. 13 00:00:36,960 --> 00:00:42,225 Mohla bych dokonce nahradit sloveso "jí" za sloveso "hází". 14 00:00:42,545 --> 00:00:44,840 Gramaticky by to bylo pořád správně. 15 00:00:44,840 --> 00:00:47,469 I když si asi těžko představíte, jak můj pes hází knihu. 16 00:00:47,875 --> 00:00:51,681 Při programování máme namísto částí řeči takzvané "typy". 17 00:00:51,895 --> 00:00:54,335 Jeden druh typů už znáte, čísla. 18 00:00:54,335 --> 00:00:57,067 Čísla používáme v našem kódu pro kreslení pořád. 19 00:00:57,067 --> 00:01:01,236 A stejně jako v češtině, někdy použít čísla smysl dává a někdy ne. 20 00:01:01,236 --> 00:01:05,538 Co kdybych do funkce pro pozadí napsala "100 minus"? 21 00:01:06,104 --> 00:01:08,696 Cokoli, co následuje po minus by mělo být číslo. 22 00:01:08,696 --> 00:01:10,413 Anebo aspoň něco, co se číslu rovná. 23 00:01:10,413 --> 00:01:13,448 Jako například 14 plus 15. 24 00:01:14,178 --> 00:01:17,833 Co kdybych ale napsala jen "100 mezera"? 25 00:01:17,833 --> 00:01:20,434 Za mezeru nemůžu ale napsat žádné číslo. 26 00:01:20,434 --> 00:01:23,815 A to proto, že "100 mezera plus 10" nic neznamená. 27 00:01:23,815 --> 00:01:27,644 V programování máme tedy další typ, boolean. 28 00:01:27,644 --> 00:01:29,063 Jmenuje se boolean, 29 00:01:29,063 --> 00:01:33,631 protože ho vymyslel člověk, který se jmenoval George Boole. 30 00:01:34,321 --> 00:01:37,394 A na rozdíl od čísla, které může mít různé hodnoty, 31 00:01:37,394 --> 00:01:42,031 boolean může obsahovat jen dvě hodnoty: true nebo false. 32 00:01:42,730 --> 00:01:44,662 A jak vidíte, po napsání zmodrají. 33 00:01:44,662 --> 00:01:46,823 Což znamená, že jsou to velmi speciální slova. 34 00:01:47,034 --> 00:01:50,157 Už jste na boolean narazili a to aniž byste si to uvědomili. 35 00:01:50,656 --> 00:01:51,718 U podmíněných příkazů. 36 00:01:51,718 --> 00:01:53,283 Pojďme si je rychle připomenout. 37 00:01:53,283 --> 00:01:58,931 Vytvořím proměnnou "number" s číslem 40. 38 00:01:58,931 --> 00:02:00,782 Teď napíšu podmíněný příkaz. 39 00:02:00,782 --> 00:02:09,667 Pokud je "number" menší než 50, vykreslí se tato první elipsa. 40 00:02:10,565 --> 00:02:12,854 Teď to jenom překopíruji do podmíněného příkazu. 41 00:02:12,854 --> 00:02:15,774 Kód odsadím a to tak, že vše označím a zmáčknu tab. 42 00:02:17,393 --> 00:02:18,735 Čili náš příkaz nyní říká: 43 00:02:18,735 --> 00:02:22,821 Pokud je "number" menší než 50, což je, nakreslíme vrchní elipsu. 44 00:02:22,821 --> 00:02:27,027 V případě, že mám číslo větší než 50, vrchní elipsa jednoduše zmizí. 45 00:02:28,434 --> 00:02:32,451 Čili tento výraz uvnitř závorek je vlastně booleanový výraz. 46 00:02:32,561 --> 00:02:35,894 Nezapomeňte, matematickým výrazem je cokoli, co se rovná číslu. 47 00:02:36,164 --> 00:02:40,204 Například 3 plus 2 plus 4 krát 8. 48 00:02:40,204 --> 00:02:43,801 Booleanovým výrazem je cokoli, co se rovná booleanu. 49 00:02:43,801 --> 00:02:46,569 Dobrým způsobem, jak zjistit, zda se výraz rovná booleanu, 50 00:02:46,569 --> 00:02:50,500 je vložit před něj slovo "je" a zeptat se na něj jako na otázku. 51 00:02:50,500 --> 00:02:54,043 Pokud to zní jako ano/ne otázka, pak se jedná o booleanový výraz. 52 00:02:54,043 --> 00:02:57,137 Tady se můžeme zeptat: Je "number" menší než 50? 53 00:02:57,137 --> 00:02:58,458 Ano, ano je. 54 00:02:58,458 --> 00:03:00,523 A tím pádem se jedná o booleanový výraz. 55 00:03:00,523 --> 00:03:03,438 Na druhou stranu, co kdybych měla 4 plus 4? 56 00:03:04,093 --> 00:03:07,024 Zkusila bych se zeptat: Je 4 plus 4? 57 00:03:08,374 --> 00:03:10,275 Ne, není to boolean. 58 00:03:10,330 --> 00:03:11,850 Zpět k podmíněnému příkazu. 59 00:03:12,065 --> 00:03:14,573 Mezi tyto závorky můžu napsat cokoli. 60 00:03:14,573 --> 00:03:17,457 Musí se ale jednat o boolean anebo o booleanový výraz. 61 00:03:17,457 --> 00:03:21,289 Mohla bych například napsat "if true" a elipsa by se vykreslovala pořád. 62 00:03:21,289 --> 00:03:24,598 Anebo bych mohla napsat "if false" a elipsa by se vůbec neobjevila. 63 00:03:24,598 --> 00:03:28,699 Dále bych mohla napsat "if 3 je menší než 4". 64 00:03:28,699 --> 00:03:32,035 To je booleanový výraz, který bude mít vždy hodnotu "true". 65 00:03:32,035 --> 00:03:34,664 To je ale celkem zbytečné, elipsa se totiž objeví vždy. 66 00:03:34,664 --> 00:03:38,042 Nebo 3 je menší než 4, což bude mít vždy hodnotu "false". 67 00:03:38,042 --> 00:03:41,049 Dále můžu také přidělit boolean proměnným. 68 00:03:41,049 --> 00:03:48,367 Vytvořím si novou proměnnou "var" a nazvu ji "WinstonIsCool". 69 00:03:48,367 --> 00:03:51,500 A přidělím jí booleanovou hodnotu, čili true nebo false. 70 00:03:51,500 --> 00:03:54,274 Řekněme, že "true", protože Winston je super. 71 00:03:54,274 --> 00:03:57,047 A protože proměnná nyní obsahuje booleanovou hodnotu, 72 00:03:57,047 --> 00:04:00,444 můžu ji zkopírovat a vložit do tohoto podmíněného příkazu. 73 00:04:02,570 --> 00:04:06,731 A jak vidíte, elipsa se vykresluje, protože hodnota WinstonIsCool je "true". 74 00:04:06,731 --> 00:04:10,600 Mohla bych také nahradit toto za booleanový výraz. 75 00:04:10,600 --> 00:04:14,200 Například: 2 je menší než 4. 76 00:04:15,286 --> 00:04:18,099 Pokud vytvoříte proměnnou, která má mít booleanovou hodnotu, 77 00:04:18,099 --> 00:04:21,597 měli byste jí dát jméno, které popisuje podmínku pro "true". 78 00:04:21,597 --> 00:04:25,132 Dobrý způsobem, jak si jméno ověřit je vložit ho do podmíněného příkazu. 79 00:04:25,132 --> 00:04:27,589 Tak zkontrolujete, zda jako podmínka dává smysl. 80 00:04:27,589 --> 00:04:29,281 Zapomeňte na to, že Winston je cool. 81 00:04:29,281 --> 00:04:30,281 To už dávno víme. 82 00:04:31,134 --> 00:04:34,306 Řekněme, že mám proměnnou "muffins". 83 00:04:34,306 --> 00:04:35,951 Takže "if muffins". 84 00:04:37,101 --> 00:04:38,959 To mi nic moc neříká. 85 00:04:38,959 --> 00:04:41,629 Jako jméno proměnné je to tedy nevhodné. 86 00:04:41,694 --> 00:04:45,326 Mohla bych ale napsat "if muffinsAreBaking". 87 00:04:45,326 --> 00:04:46,451 To by tedy říkalo: 88 00:04:46,451 --> 00:04:50,621 Když je tato proměnná "true", muffiny se pečou. 89 00:04:50,871 --> 00:04:54,229 A neptejte se mě na muffiny, o to tady vůbec nejde. 90 00:04:54,229 --> 00:04:59,000 Teď vrátíme zpět výraz "if ‚number‘ je menší než 50". 91 00:05:00,383 --> 00:05:02,538 Nyní se podívejme na další booleanové výrazy. 92 00:05:02,538 --> 00:05:05,772 Doposud jste viděli "menší než" a "větší než". 93 00:05:05,772 --> 00:05:09,077 Můžete ale zadat i hodnotu "menší nebo rovno". 94 00:05:09,077 --> 00:05:12,571 Zkusme "if number je menší nebo rovno 48". 95 00:05:12,981 --> 00:05:20,034 Zároveň můžeme napsat "if number je větší nebo rovno 48". 96 00:05:20,034 --> 00:05:24,201 Pokud tomu tak je, nakreslíme vrchní elipsu vpravo. 97 00:05:26,014 --> 00:05:26,848 Teď to odsadíme. 98 00:05:27,055 --> 00:05:30,181 A pokud byste chtěli zjistit, zda jsou si dva čísla přesně rovna, 99 00:05:30,181 --> 00:05:36,281 můžete napsat "number tři rovnítka a číslo 48." 100 00:05:39,264 --> 00:05:42,028 Tento výraz s rovnítky je více podobný tomu z matematiky. 101 00:05:42,028 --> 00:05:44,836 Akorát namísto jednoho rovnítka používáme tři za sebou. 102 00:05:44,836 --> 00:05:46,203 Trošku přehnané, že? 103 00:05:46,203 --> 00:05:52,026 A na závěr máme výraz pro zjištění, zda si dva čísla vůbec nejsou rovna. 104 00:05:52,026 --> 00:05:57,601 Můžete napsat "if number vykřičník a dva rovnítka 48". 105 00:05:59,911 --> 00:06:02,194 V tom případě nakreslíme poslední elipsu. 106 00:06:04,096 --> 00:06:07,499 Když se podíváme nahoru, uvidíme, že "number" je 48. 107 00:06:07,499 --> 00:06:09,765 Je tedy menší nebo rovno 48. 108 00:06:09,765 --> 00:06:11,886 Kvůli tomu se vykresluje vrchní levá elipsa. 109 00:06:11,886 --> 00:06:14,991 Zároveň je větší nebo rovno 48. 110 00:06:14,991 --> 00:06:16,641 Zároveň se rovná 48. 111 00:06:16,641 --> 00:06:18,823 Ale současně není nerovno číslu 48. 112 00:06:18,823 --> 00:06:21,223 A kvůli tomu nemáme spodní pravou elipsu. 113 00:06:21,223 --> 00:06:23,316 A pokud se trochu pohráme s "number", 114 00:06:23,316 --> 00:06:25,657 bude se měnit to, které elipsy se vykreslí. 115 00:06:26,998 --> 00:06:29,434 Teď už znáte boolean! 116 00:06:29,434 --> 00:06:31,016 A stejně jako matematické výrazy, 117 00:06:31,016 --> 00:06:33,653 i booleanové výrazy mohou být hodně komplikované. 118 00:06:33,653 --> 00:06:35,580 O tom si ale povíme příště.