0:00:01.344,0:00:03.343 Teď, když už znáte základy cyklů, 0:00:03.343,0:00:05.747 pojďme si pomocí nich udělat[br]nějakou pěknou kresbu. 0:00:05.747,0:00:06.747 Třeba tuhle. 0:00:06.747,0:00:09.410 Je to Hopper s balónky[br]plovoucími po krásné obloze. 0:00:09.410,0:00:11.596 Jak začnu psát kód od začátku, 0:00:11.596,0:00:14.441 chci abyste přemýšleli,[br]jak byste to udělali sami. 0:00:14.441,0:00:16.401 Protože na to velmi brzy dojde. 0:00:16.401,0:00:20.207 Zaprvé, vždy je dobré rozdělit si[br]program na jednotlivé kroky. 0:00:20.207,0:00:25.181 Začneme nakreslením balónků, které[br]jsou elipsou opakovanou pořád dokola. 0:00:25.181,0:00:27.485 To zní jako úloha pro cyklus. 0:00:27.485,0:00:32.984 Poté přidáme tyto čáry a [br]nakonec i samotného Hoppera. 0:00:33.594,0:00:37.963 Takže tady máme prázdnou plochu, [br]což může být docela děsivé. 0:00:37.963,0:00:41.779 Někdy je lepší hned přidat pozadí,[br]ať to máme trochu hezčí. 0:00:41.779,0:00:43.969 A taky proto, abychom se měli [br]od čeho odrazit. 0:00:43.969,0:00:48.148 Když chceme napsat cyklus,[br]nejprve si musíme položit cyklové otázky. 0:00:48.148,0:00:49.933 Ty jsme pokryli v posledním videu. 0:00:49.933,0:00:52.695 Tentokrát to uděláme celkem rychle, 0:00:52.695,0:00:56.933 takže pokud potřebujete zopakování,[br]projděte si znovu "Intro to while loops". 0:00:56.933,0:01:01.393 Pojďme teď k první otázce: [br]"Co chceme opakovat?" 0:01:01.393,0:01:06.441 Zkusme nakreslit první balónek,[br]protože opakovat chceme přece balónky. 0:01:06.441,0:01:13.661 Můžete to udělat nějak takto,[br]ale je to trochu malé. 0:01:13.661,0:01:15.279 A není to úplně na [br]správném místě. 0:01:15.279,0:01:17.146 Zkusíme s tím trochu pohnout. 0:01:17.146,0:01:20.093 To je ta část programování,[br]kdy něco vyzkoušíte a uvědomíte si, 0:01:20.093,0:01:25.043 že to není ono, tak to zkusíte znovu a[br]nakonec jste k výsledku o něco blíže. 0:01:26.733,0:01:28.803 Teď bychom asi měli přidat[br]nějakou barvu. 0:01:28.803,0:01:31.332 Během vymýšlení kroků [br]jsme na to nemysleli. 0:01:31.332,0:01:35.232 Řekněme, že je to součástí[br]vykreslení balónku. 0:01:35.232,0:01:37.118 Jako další si musíme promyslet to, 0:01:37.118,0:01:40.898 jakým způsobem chceme během [br]cyklu náš balónek měnit. 0:01:40.898,0:01:43.403 Chceme, aby byl balónek [br]nakreslen přes obrazovku. 0:01:43.403,0:01:47.627 Chceme, aby byl nakreslen [br]tady a pak tady a tady. 0:01:47.627,0:01:51.043 Chceme, aby to udělal počítač,[br]protože moje kresba je opravdu špatná. 0:01:51.043,0:01:54.161 Můžeme to provést změnou [br]tohoto prvního čísla. 0:01:54.161,0:01:57.591 A to, jak dobře víte, ovládá polohu x:[br]tedy polohu do strany. 0:01:57.931,0:01:59.714 Ale myslím si, [br]že je to celkem chabé. 0:01:59.714,0:02:02.700 Ani to moc nepřipomíná ten obrázek,[br]který jsme viděli předtím. 0:02:02.700,0:02:06.276 Takže místo toho toto [br]nazveme x, pro polohu x. 0:02:06.276,0:02:10.727 A uděláme proměnnou, která [br]bude mít zhruba stejnou hodnotu. 0:02:11.108,0:02:14.112 Nyní budeme tuto proměnnou [br]měnit uvnitř našeho cyklu. 0:02:14.112,0:02:15.912 Použijeme tedy cyklus while. 0:02:15.912,0:02:21.816 A poté uvnitř tohoto cyklu řekneme, [br]že se x pokaždé změní o 20. 0:02:21.816,0:02:24.969 Poté přesuneme tuto elipsu dovnitř,[br]ale musíme být velmi opatrní. 0:02:24.969,0:02:27.336 Pokud elipsu nepřesuneme dovnitř, 0:02:27.336,0:02:30.439 budeme akorát přemýšlet o tom, [br]co se v programu pokazilo. 0:02:30.439,0:02:34.285 Pokud chcete, klidně [br]si to vyzkoušejte sami. 0:02:34.285,0:02:39.698 A nyní k naší třetí otázce: [br]"Jak dlouho chceme kód opakovat?" 0:02:39.698,0:02:41.168 Chceme pokračovat do té doby, 0:02:41.168,0:02:43.568 dokud se nedostaneme[br]za okraj obrazovky. 0:02:43.568,0:02:45.957 Možná tedy až do bodu, kdy je [br]x je menší než 400. 0:02:45.957,0:02:48.304 Teď je to zajímavé, [br]protože se něco děje. 0:02:48.304,0:02:50.743 Ale není to úplně to,[br]co jsme si představovali. 0:02:50.743,0:02:54.029 Takže stejně jako předtím, musíme to [br]projít a pomalu to vylepšovat, 0:02:54.029,0:02:56.479 abychom se dostali do bodu, [br]který jsme si vymezili. 0:02:56.479,0:02:59.940 Zaprvé, elipsy jsou moc nahuštěny,[br]takže to musíme napravit. 0:02:59.940,0:03:02.319 Je dobré dát jim trochu [br]volného místa. 0:03:02.319,0:03:05.699 Možná jdou ale pořád příliš [br]daleko od stran obrazovky, 0:03:05.699,0:03:11.618 takže pokud změníme koncový bod, [br]mohou elipsy začít mizet. 0:03:11.618,0:03:12.697 Protože tím říkáme, 0:03:12.697,0:03:16.507 že jakmile se nám x bude [br]blížit této hodnotě, přestaň kreslit. 0:03:16.507,0:03:19.385 A to je to, co říká [br]tato část cyklu while. 0:03:19.385,0:03:21.125 Dále můžeme také říct: 0:03:21.125,0:03:24.945 Možná chceme trochu pozměnit elipsy, [br]chceme je všechny posunout dolů. 0:03:24.945,0:03:29.138 Chceme trochu změnit [br]jejich velikost. 0:03:29.138,0:03:30.838 Skvělou věcí na cyklu while je to, 0:03:30.838,0:03:33.838 že můžeme všechny změny [br]provést pro všechny najednou. 0:03:33.838,0:03:36.576 Teď je to dokonalé. 0:03:36.576,0:03:40.000 Když se nyní podíváme na balónky, [br]bylo by hezké k nim přidat provázky. 0:03:40.000,0:03:43.892 Pokud se nám líbí, musíme [br]je uvázat, jinak nám odletí. 0:03:43.892,0:03:46.013 Pro každou z nich [br]potřebujeme čáru. 0:03:46.013,0:03:50.573 Potřebujeme umístit čáru do[br]středu každého z těchto balónků. 0:03:50.573,0:03:51.562 Aby to bylo snadné. 0:03:51.562,0:03:55.282 A pak se všechny čáry sejdou [br]ve stejném bodě, asi takto. 0:03:55.282,0:03:59.200 Jak přimějeme náš program, [br]aby to udělal namísto nás? 0:03:59.505,0:04:01.621 Vzpomeňme si, že pokud [br]chceme něco opakovat, 0:04:01.621,0:04:03.620 musíme to vložit dovnitř [br]while cyklu. 0:04:03.620,0:04:05.048 Uděláme tedy tuto čáru. 0:04:05.048,0:04:07.377 Pokud chceme, aby toto bylo[br]v samém středu elipsy, 0:04:07.377,0:04:10.141 musíme to mít počáteční pozici[br]na těchto dvou souřadnicích. 0:04:10.632,0:04:13.638 Řekněme, že to skončí kdekoli. 0:04:14.068,0:04:15.498 Celkem jsme se trefili. 0:04:16.118,0:04:21.291 Ale opět to není dokonalé, možná to sami[br]vidíte, takže to musíme opravit. 0:04:21.291,0:04:23.655 Nejprve pojďme opravit [br]tuto ošklivou věc. 0:04:23.655,0:04:28.633 Což je to, že se námi nakreslené [br]čáry překrývají s balónky. 0:04:28.703,0:04:29.703 To není dobře. 0:04:29.813,0:04:32.459 Ve skutečnosti chceme, [br]aby elipsy provázek zakrývaly. 0:04:32.459,0:04:35.249 A to upravíme jednoduše tím,[br]že změníme pořadí. 0:04:35.249,0:04:38.964 Pravděpodobně se zde objeví spousta[br]věcí, které jste se již naučili. 0:04:38.964,0:04:42.555 Takto je to dobré, ale možná bychom [br]chtěli ještě změnit barvu těchto čar. 0:04:42.555,0:04:45.533 A jak to udělat, pokud program[br]děláme úplně sami? 0:04:45.533,0:04:47.424 Můžeme se podívat[br]na dokumentaci. 0:04:47.424,0:04:50.632 Pokud byste nevěděli jak, podívali [br]byste se na video o dokumentaci. 0:04:50.632,0:04:54.314 Můžeme pokračovat a pomocí stroke()[br]nastavit barvu těchto čar. 0:04:54.804,0:05:00.253 A dám jim barvu, nevím, [br]možná něco takovéto? 0:05:00.253,0:05:01.544 A je to krásné! 0:05:01.544,0:05:05.852 A poslední, co musíme udělat, [br]je namalovat Hoppera. 0:05:05.852,0:05:10.152 Toho docílíme tím, že ho vložíme[br]jako obrázok, takhle. 0:05:10.152,0:05:12.936 Jak jsem na to přišla [br]naleznete v dokumentaci. 0:05:12.936,0:05:16.536 Ještě si pohrám s polohou, aby[br]Hopper v ruce držel balónky. 0:05:19.339,0:05:20.214 Jsme hotovi! 0:05:20.214,0:05:22.551 Můžete zkusit balónky ozdobit, 0:05:22.551,0:05:26.534 nebo do tohoto cyklu něco přidat, [br]aby byly balónky trochu zajímavější. 0:05:26.544,0:05:30.544 Můžete dokonce použít cyklus[br]u vaší další kresby.