Na začátek trocha zdánlivě nudného opakování, ať si trochu osvěžíme programování. To ale neznamená, že tu nemůžeš najít něco zvláštního a překvapivého!
Co dělá funkce print
?
Co vrací funkce print
?
Co dělá pojmenovaný argument end
funkce print
?
Co dělá pojmenovaný argument sep
funkce print
?
Čím se liší chyby, které dostaneš když zadáš tyhle příkazy?
int('blabla')
float('blabla')
int('8.9')
int(8.9)
Následující sada projektů není jednoduchá, ale uděláš-li ji, pochopíš různá použití cyklu for.
Pomocí cyklu for
a funkce range()
napiš program, který na terminál vypíše:
a
a
a
a
Pomocí cyklu for
napiš program, který vypíše:
Řádek 0
Řádek 1
Řádek 2
Řádek 3
Řádek 4
Jak jsi pojmenovala proměnnou, kterou jsi v minulém příkladu použila? Vymysli pro ni název, který nejlépe vystihuje, co proměnná obsahuje.
Je důležité proměnnou pojmenovat výstižně, jinak se v dalších projektech můžeš ztratit. Možné řešení je uvedeno na konci zadání.
Pomocí cyklu for
napiš program, který vypíše:
0 na druhou je 0
1 na druhou je 1
2 na druhou je 4
3 na druhou je 9
4 na druhou je 16
Jak pojmenuješ proměnnou cyklu?
Pomocí cyklů for
a parametru end
pro print
napiš program, který postupně z jednotlivých 'X'
vypíše:
X X X X X
X X X X X
X X X X X
X X X X X
X X X X X
„Z jednotlivých 'X'
“ znamená, že nepoužiješ např. print('X X X X X')
.
Jak pojmenuješ proměnnou cyklu? A tu druhou?
Napiš program, který vypíše „tabulku“ s násobilkou:
0 0 0 0 0
0 1 2 3 4
0 2 4 6 8
0 3 6 9 12
0 4 8 12 16
Napiš program, který postupně z jednotlivých 'X'
vypíše:
X
X X
X X X
X X X X
Pomocí cyklu for
a příkazu if
napiš program, který vypíše následující řádky.
Funkci print
volej pouze uvnitř v cyklu:
první řádek
není první
není první
není první
Pomocí cyklů for
a příkazu if
napiš program, který z jednotlivých 'X'
a mezer vypíše:
X X X X X X
X X
X X
X X
X X
X X X X X X
Předchozí 4 programy s cyklem for
uprav tak, aby počet řádků (či velikost čtverce/trojúhelníku/tabulky) mohl zadat uživatel.
Následující sada projektů může vyžadovat delší zamyšlení. A to zamyšlení je důležitější než samotná odpověď.
Co dělá tenhle kód?
for c in 'Ahoj světe!':
print(c)
Vymyslíš lepší jméno pro proměnnou c
z minulé úlohy?
Co dělá tenhle kód?
for c in 38:
print(c)
Už víš, co dělá for
s range()
, výčtem hodnot a řetězcem.
Dokážeš to zobecnit – popsat for
jednodušeji, než jak je popsán v materiálech?
Teď několik programovacích oříšků pro dlouhé chvíle. Nemáš-li čas, přeskoč je.
Napiš program, který se zeptá na 3 čísla a zjistí, jestli je jejich součet větší než 10.
Napiš program, který načte číslo a zjistí, jestli je sudé.
Sudá čísla jsou beze zbytku dělitelná dvěma.
Napiš program, který vypíše čísla od jedné do 100, ale:
Máš-li ráda matematiku* a nebojíš-li se výzvy, načti od uživatele číslo n a:
* t.j. nemáš-li ráda matematiku, nedělej tenhle projekt :)
Možné řešení projektu 7: cislo_radku