Tolik nových slovíček! Abyste se v nich neztratili, zkuste pomocí pár vlastních slov popsat, co to je …
… funkce
… argument
… procedura
… návratová hodnota
… výraz
… cyklus
Želví kreslení! Tahle sekce vás naučí myslet jako programátoři počítačové grafiky. Je dobré jednotlivé projekty dělat postupně a nepřeskakovat. Kdybste si potřebovali od želvy oddechnout, skočte až na další sekci.
Když něco začne fungovat, doporučuji znovu si řešení projít a zamyslet se nad ním.
Nakreslete trojúhelník.
Poznámka: Rovnostranný trojúhelník má vnitřní úhly 60°. Želva se ale otáčí o vedlejší úhel 180 - 60 = 120°.
Nakreslete domeček!
Jak pravil Pythagoras, délka šikmé čáry v domečku je √2-krát délka stěny. Funkci na odmocninu najdete na taháku.
Nakreslete vesnici!
Jestli kreslení trvá dlouho a nebaví vás čekat,
můžete naimportovat a použít funkci speed
,
která nastavuje rychlost dalšího kreslení:
from turtle import speed
speed(1) # želva jak má být – extrémně pomalá
speed(3) # pomalá želva
speed(6) # normálně rychlá želva
speed(10) # hodně rychlá želva
speed(0) # turboželva
Nakreslete vedle sebe pětiúhelník, šestiúhelník, sedmiúhelník, osmiúhelník.
Vnitřní úhel pravidelného n
-úhelníka má 180 × (1-2/n)
stupňů.
Aby byly tvary zhruba stejně veliké, použijte pro n
-úhelník délku strany např. 200/n
Nakreslete pravidelný n
-úhelník, kde n
zadá uživatel.
Želva umí jen rovné čáry. Jde pomocí rovných čar nakreslit kolečko?
Nevíte-li, přeskoč na další projekt a pak se sem vrať.
Nakreslete pravidelný stoúhelník.
Nakreslete takovýto ornament:
Nevíte-li si rady, vezměte pravítko a změřte délky jednotlivých čar. Doporučuju začít od středu.
Nakreslete takovýto ornament:
Nakreslete spirálu.
Od ornamentů ke spirále se dostanete stejným způsobem jako od n
-úhelníků ke kolečku.
Napište obrázek! Třeba les ze stromů, město z domů, nebe z hvězd, dav ze smajlíků, hradbu z věží, zikkurat ze schodů, ...
Můžete použít i nějakou z funkcí modulu random
.
Když budete mít obrázků víc, odevzdejte je všechny!
Obrázky si pro inspiraci ukážeme na srazu.
Na videu jsme kreslili tři čtverce, každý otočený o 15°.
Nakreslete 18 čtverců pootočených o 20°.
Vezměte program z minulé úlohy a dokreslete stonek a listy.
Je jenom na vás, jaký budou mít tvar – nemusí odpovídat vzorovému obrázku.
Pište komentáře a snažte se opakovat pomocí for
,
ne pomocí Ctrl+C Ctrl+V.
V těchto úkolech je něco nového k naučení. Úkoly nezadávají postup, jak na odpověď přijít, ale to určitě zvládnete!
Jakou sekvenci dostanete, když funkci range
zavoláte se dvěma argumenty?
Se třemi?
Hra pro tento týden!
Naprogramujte hru Oko bere:
Cílem hry je neprohrát a získat přitom co nejvíc bodů, ideálně 21.
A na konec pár textových úkolů. Nestíháte-li, zaměřte se na jiné úkoly.
Napište program, který postupně načte od uživatele dvě čísla a jednoznakový
řetězec – buď '+'
, '-'
, '*'
nebo '/'
. Program provede na číslech příslušnou operaci.
Příklad použití programu (hodnoty za dvojtečkou doplnil uživatel):
První číslo: 123
Druhé číslo: 456
Operace: +
123 + 456 = 579
Napište program, který se pětkrát zeptá na číslo a nejmenší zadané číslo vypíše.
Program by mělo jít snadno upravit tak, aby se ptal na deset nebo sto čísel.
Nevíte-li si rady, podívejte se na video Přepisování proměnných.
Místo přičítání do proměnné celkem
zkuste dávat správnou hodnotu do
proměnné zatim_nejmensi
.