Návratové hodnoty funkce (video verze)
-
0:01 - 0:03Tak jsme zpátky s naším programem.
-
0:03 - 0:06Ten používá funkci k
malování čtyř Winstonů. -
0:06 - 0:07Změnila jsem ho trošku.
-
0:07 - 0:09Nyní ukazuje skutečný věk
v určitém bodě života. -
0:09 - 0:11Brzy uvidíte proč.
-
0:11 - 0:14Nejdříve Vám musím něco
říct o Winstonovi. -
0:14 - 0:16Winston má závislost na koblihách.
-
0:16 - 0:18Jí je 3x denně.
-
0:18 - 0:21Pravděpodobně díky tomu je jeho
obličej tak velký a žlutý. -
0:22 - 0:25Jak varovat Winstona,
že jsou pro něj koblihy špatné? -
0:25 - 0:27Musíme tento program trochu upravit.
-
0:27 - 0:32A to tak, aby ukázal kolik
koblih snědl v každém bodě jeho života. -
0:32 - 0:46Například, když mu byly dva roky,
což znamená, že jich snědl 3x365x2. -
0:46 - 0:50Zobrazíme si to pod tímto nadpisem.
-
0:50 - 0:54Dva tisíce koblih, to je hodně koblih
za dva roky. -
0:54 - 1:02Nyní mu je 14 let, podívejme,
3 krát 365 krát 14. -
1:04 - 1:08Správně, to je 15 000 koblih.
-
1:08 - 1:13Mohli bychom nadále takto počítat,
ale všimněte si určitého vzoru. -
1:13 - 1:20Opakuji stále můj výpočet a jedinou věc,
kterou měním je počet let. -
1:20 - 1:23Kdykoliv vidím opakující se kód,
jako je tento. -
1:23 - 1:28Pomyslím si,
"Hm, mohu z toho udělat funkci?" -
1:28 - 1:32Ano určitě můžeme.
Tak pojďme na to. -
1:33 - 1:34Definuji zde moji funkci.
-
1:34 - 1:40Nazvu ji calcTotalDonuts = function.
-
1:41 - 1:44Dáme jí jeden parametr a to
počet let. -
1:44 - 1:46Je to totiž jediná věc, jenž
měníme. -
1:46 - 1:49A to pokaždé, když děláme tento výpočet.
-
1:49 - 1:53Uvnitř provedeme výpočet.
-
1:53 - 2:00Tento výpočet uložíme do proměnné,
takže to bude 3x 365x numYears. -
2:01 - 2:03Správně, nyní máme funkci.
-
2:03 - 2:13Nahradím zde tento výraz
výrazem calcTotalDonuts s parametrem 2. -
2:13 - 2:17Dobře, nyní nevidíme žádný celkový počet.
-
2:17 - 2:19Co se stalo?
-
2:19 - 2:23Naše funkce zde spočítala celkový počet.
-
2:23 - 2:26Problém je, že o tom nikomu neřekla.
-
2:26 - 2:30Je to jako, když se Vás učitelka
na něco zeptá. -
2:30 - 2:32A odpověď je u Vás v hlavě.
-
2:32 - 2:34Prostě se stydíte odpovědět.
-
2:34 - 2:37Odpověděli jste, ale Vaše učitelka
se o tom nikdy nedozví. -
2:37 - 2:45Pokud má funkce něco vracet, tak
musí mít definovanou návratovou hodnotu. -
2:46 - 2:52K definování této hodnoty
stačí napsat return a to co chceme ukázat. -
2:52 - 2:55Může to být proměnná nebo
hodnota nějakého výrazu. -
2:55 - 2:58Pro náš příklad budeme vracet
totalDonuts. -
2:58 - 3:02Tedy kdokoliv zavolá tuto funkci,
dostane tuto odpověď. -
3:02 - 3:04Nyní se již naše hodnota zobrazuje.
-
3:05 - 3:07Můžeme naší funkci zkrátit.
-
3:07 - 3:08Nemusíme ji ukládat
do proměnné. -
3:08 - 3:10Celý výraz vložíme do return.
-
3:10 - 3:14Nyní je to na jednom řádku.
-
3:15 - 3:17Dále spočítáme celkový počet
koblih. -
3:18 - 3:23Uděláme to pomocí zavolání této
funkce s počtem let. -
3:24 - 3:36Podívejte, je to calcTotalDonuts(25),
poté calcTotalDonuts(65). -
3:36 - 3:45Tedy pokud by mu bylo 65 let,
tak by snědl 70 000 koblih a to je dost. -
3:45 - 3:48Nemyslím si, že by toho byl
Winston schopen. -
3:48 - 3:53Nyní je to funkce a
je snadné měnit její části. -
3:53 - 3:55Například kdyby to viděl
Winston a řekl: -
3:55 - 3:59"Páni, to je až moc.
Co kdybych jedl jednu denně?" -
3:59 - 4:02Dobře, stačí změnit pouze jedno číslo.
-
4:03 - 4:04Tím se vše změní.
-
4:04 - 4:08Výsledek je 23 000. Stále dost.
Možná by Winston řekl: -
4:08 - 4:11"Dobře, dobře, tak co kdybych jedl
jen jednu týdně?" -
4:11 - 4:12Ano, to je již rozumné.
-
4:12 - 4:18Stačí jen změnit 365 na 50,
protože rok má 50 týdnů. -
4:18 - 4:23Je to lepší? 3000 koblih se zdá již jako
rozumné množství. -
4:23 - 4:31Takže jak vidíte s funkcemi a návratovými
hodnotami můžeme zachránit kód a životy.
- Title:
- Návratové hodnoty funkce (video verze)
- Description:
-
Toto je jen výsek obrazovky našeho mluveného interaktivního kódování, připraveného k vytváření titulků a k usnadnění překladu. Je lepší sledovat naše rozhovory zde:
https://www.khanacademy.org/cs/programming/ - Video Language:
- English
- Duration:
- 04:32
Marek Pluhař edited Czech subtitles for Function Return Values (Video Version) | ||
Marek Pluhař edited Czech subtitles for Function Return Values (Video Version) | ||
Marek Pluhař edited Czech subtitles for Function Return Values (Video Version) | ||
Martina Randulová edited Czech subtitles for Function Return Values (Video Version) | ||
Marek Pluhař edited Czech subtitles for Function Return Values (Video Version) | ||
Marek Pluhař edited Czech subtitles for Function Return Values (Video Version) | ||
Marek Pluhař edited Czech subtitles for Function Return Values (Video Version) | ||
Marek Pluhař edited Czech subtitles for Function Return Values (Video Version) |