[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:00.98,0:00:03.30,Default,,0000,0000,0000,,Tak jsme zpátky s naším programem. Dialogue: 0,0:00:03.30,0:00:05.58,Default,,0000,0000,0000,,Ten používá funkci k \Nmalování čtyř Winstonů. Dialogue: 0,0:00:05.58,0:00:07.16,Default,,0000,0000,0000,,Změnila jsem ho trošku. Dialogue: 0,0:00:07.16,0:00:09.49,Default,,0000,0000,0000,,Nyní ukazuje skutečný věk \Nv určitém bodě života. Dialogue: 0,0:00:09.49,0:00:10.74,Default,,0000,0000,0000,,Brzy uvidíte proč. Dialogue: 0,0:00:11.38,0:00:13.55,Default,,0000,0000,0000,,Nejdříve Vám musím něco\Nříct o Winstonovi. Dialogue: 0,0:00:13.55,0:00:15.90,Default,,0000,0000,0000,,Winston má závislost na koblihách. Dialogue: 0,0:00:15.90,0:00:18.44,Default,,0000,0000,0000,,Jí je 3x denně. Dialogue: 0,0:00:18.44,0:00:21.33,Default,,0000,0000,0000,,Pravděpodobně díky tomu je jeho\Nobličej tak velký a žlutý. Dialogue: 0,0:00:21.70,0:00:25.31,Default,,0000,0000,0000,,Jak varovat Winstona,\Nže jsou pro něj koblihy špatné? Dialogue: 0,0:00:25.31,0:00:27.07,Default,,0000,0000,0000,,Musíme tento program trochu upravit. Dialogue: 0,0:00:27.07,0:00:31.76,Default,,0000,0000,0000,,A to tak, aby ukázal kolik \Nkoblih snědl v každém bodě jeho života. Dialogue: 0,0:00:32.10,0:00:45.87,Default,,0000,0000,0000,,Například, když mu byly dva roky,\Ncož znamená, že jich snědl 3x365x2. Dialogue: 0,0:00:45.87,0:00:50.33,Default,,0000,0000,0000,,Zobrazíme si to pod tímto nadpisem. Dialogue: 0,0:00:50.33,0:00:53.94,Default,,0000,0000,0000,,Dva tisíce koblih, to je hodně koblih\Nza dva roky. Dialogue: 0,0:00:53.94,0:01:02.45,Default,,0000,0000,0000,,Nyní mu je 14 let, podívejme, \N3 krát 365 krát 14. Dialogue: 0,0:01:04.03,0:01:08.45,Default,,0000,0000,0000,,Správně, to je 15 000 koblih. Dialogue: 0,0:01:08.45,0:01:12.62,Default,,0000,0000,0000,,Mohli bychom nadále takto počítat,\Nale všimněte si určitého vzoru. Dialogue: 0,0:01:13.15,0:01:20.42,Default,,0000,0000,0000,,Opakuji stále můj výpočet a jedinou věc, \Nkterou měním je počet let. Dialogue: 0,0:01:20.42,0:01:22.87,Default,,0000,0000,0000,,Kdykoliv vidím opakující se kód,\Njako je tento. Dialogue: 0,0:01:22.87,0:01:28.35,Default,,0000,0000,0000,,Pomyslím si,\N"Hm, mohu z toho udělat funkci?" Dialogue: 0,0:01:28.35,0:01:31.84,Default,,0000,0000,0000,,Ano určitě můžeme. \NTak pojďme na to. Dialogue: 0,0:01:32.80,0:01:34.42,Default,,0000,0000,0000,,Definuji zde moji funkci. Dialogue: 0,0:01:34.42,0:01:40.38,Default,,0000,0000,0000,,Nazvu ji calcTotalDonuts = function. Dialogue: 0,0:01:40.92,0:01:44.23,Default,,0000,0000,0000,,Dáme jí jeden parametr a to\Npočet let. Dialogue: 0,0:01:44.23,0:01:46.02,Default,,0000,0000,0000,,Je to totiž jediná věc, jenž\Nměníme. Dialogue: 0,0:01:46.02,0:01:48.57,Default,,0000,0000,0000,,A to pokaždé, když děláme tento výpočet. Dialogue: 0,0:01:49.32,0:01:52.88,Default,,0000,0000,0000,,Uvnitř provedeme výpočet. Dialogue: 0,0:01:52.88,0:01:59.60,Default,,0000,0000,0000,,Tento výpočet uložíme do proměnné,\Ntakže to bude 3x 365x numYears. Dialogue: 0,0:02:00.68,0:02:03.10,Default,,0000,0000,0000,,Správně, nyní máme funkci. Dialogue: 0,0:02:03.10,0:02:12.74,Default,,0000,0000,0000,,Nahradím zde tento výraz \Nvýrazem calcTotalDonuts s parametrem 2. Dialogue: 0,0:02:12.74,0:02:16.88,Default,,0000,0000,0000,,Dobře, nyní nevidíme žádný celkový počet. Dialogue: 0,0:02:17.23,0:02:19.09,Default,,0000,0000,0000,,Co se stalo? Dialogue: 0,0:02:19.09,0:02:22.62,Default,,0000,0000,0000,,Naše funkce zde spočítala celkový počet. Dialogue: 0,0:02:23.10,0:02:25.64,Default,,0000,0000,0000,,Problém je, že o tom nikomu neřekla. Dialogue: 0,0:02:26.05,0:02:30.37,Default,,0000,0000,0000,,Je to jako, když se Vás učitelka\Nna něco zeptá. Dialogue: 0,0:02:30.37,0:02:31.74,Default,,0000,0000,0000,,A odpověď je u Vás v hlavě. Dialogue: 0,0:02:31.74,0:02:33.65,Default,,0000,0000,0000,,Prostě se stydíte odpovědět. Dialogue: 0,0:02:33.65,0:02:36.100,Default,,0000,0000,0000,,Odpověděli jste, ale Vaše učitelka\Nse o tom nikdy nedozví. Dialogue: 0,0:02:37.50,0:02:45.17,Default,,0000,0000,0000,,Pokud má funkce něco vracet, tak \Nmusí mít definovanou návratovou hodnotu. Dialogue: 0,0:02:45.71,0:02:51.57,Default,,0000,0000,0000,,K definování této hodnoty\Nstačí napsat return a to co chceme ukázat. Dialogue: 0,0:02:51.57,0:02:55.14,Default,,0000,0000,0000,,Může to být proměnná nebo \Nhodnota nějakého výrazu. Dialogue: 0,0:02:55.14,0:02:57.75,Default,,0000,0000,0000,,Pro náš příklad budeme vracet \NtotalDonuts. Dialogue: 0,0:02:57.75,0:03:01.54,Default,,0000,0000,0000,,Tedy kdokoliv zavolá tuto funkci,\Ndostane tuto odpověď. Dialogue: 0,0:03:01.88,0:03:04.42,Default,,0000,0000,0000,,Nyní se již naše hodnota zobrazuje. Dialogue: 0,0:03:04.77,0:03:06.65,Default,,0000,0000,0000,,Můžeme naší funkci zkrátit. Dialogue: 0,0:03:06.65,0:03:08.34,Default,,0000,0000,0000,,Nemusíme ji ukládat \Ndo proměnné. Dialogue: 0,0:03:08.34,0:03:10.05,Default,,0000,0000,0000,,Celý výraz vložíme do return. Dialogue: 0,0:03:10.05,0:03:14.27,Default,,0000,0000,0000,,Nyní je to na jednom řádku. Dialogue: 0,0:03:15.07,0:03:17.17,Default,,0000,0000,0000,,Dále spočítáme celkový počet\Nkoblih. Dialogue: 0,0:03:17.74,0:03:23.45,Default,,0000,0000,0000,,Uděláme to pomocí zavolání této\Nfunkce s počtem let. Dialogue: 0,0:03:24.21,0:03:36.37,Default,,0000,0000,0000,,Podívejte, je to calcTotalDonuts(25), \Npoté calcTotalDonuts(65). Dialogue: 0,0:03:36.37,0:03:45.14,Default,,0000,0000,0000,,Tedy pokud by mu bylo 65 let,\Ntak by snědl 70 000 koblih a to je dost. Dialogue: 0,0:03:45.14,0:03:48.05,Default,,0000,0000,0000,,Nemyslím si, že by toho byl\NWinston schopen. Dialogue: 0,0:03:48.05,0:03:53.18,Default,,0000,0000,0000,,Nyní je to funkce a\Nje snadné měnit její části. Dialogue: 0,0:03:53.18,0:03:55.36,Default,,0000,0000,0000,,Například kdyby to viděl \NWinston a řekl: Dialogue: 0,0:03:55.36,0:03:58.86,Default,,0000,0000,0000,,"Páni, to je až moc.\NCo kdybych jedl jednu denně?" Dialogue: 0,0:03:58.86,0:04:02.24,Default,,0000,0000,0000,,Dobře, stačí změnit pouze jedno číslo. Dialogue: 0,0:04:02.73,0:04:04.33,Default,,0000,0000,0000,,Tím se vše změní. Dialogue: 0,0:04:04.33,0:04:07.56,Default,,0000,0000,0000,,Výsledek je 23 000. Stále dost. \NMožná by Winston řekl: Dialogue: 0,0:04:07.56,0:04:10.77,Default,,0000,0000,0000,,"Dobře, dobře, tak co kdybych jedl \Njen jednu týdně?" Dialogue: 0,0:04:10.77,0:04:12.48,Default,,0000,0000,0000,,Ano, to je již rozumné. Dialogue: 0,0:04:12.48,0:04:18.10,Default,,0000,0000,0000,,Stačí jen změnit 365 na 50,\Nprotože rok má 50 týdnů. Dialogue: 0,0:04:18.10,0:04:22.80,Default,,0000,0000,0000,,Je to lepší? 3000 koblih se zdá již jako \Nrozumné množství. Dialogue: 0,0:04:22.80,0:04:30.82,Default,,0000,0000,0000,,Takže jak vidíte s funkcemi a návratovými\Nhodnotami můžeme zachránit kód a životy.