Cyklus for v Pythonu

MSN
Zkopírovat kód tématu
Zkopírovat krátkou adresu (umime.to/MSN)
Ukázat QR kód

umime.to/MSN


Stáhnout QR kód

Cykly při programování využíváme pro opakování skupiny příkazů. Opakování označujeme často pojmem iterace. Cyklus for využíváme při průchodu předem danou posloupností hodnot, například pokud chceme provést známý počet opakování. Pokud počet opakávání řídí podmínka, potřebujeme cyklus while.

Jednoduchý for cyklus

Základní využití cyklu for je pro prosté opakování sady příkazů. Pomocí for i in range(10) zopakujeme 10× sadu příkazů. Příkazy, které se mají opakovat, musíme odsadit. Takto tedy vypíšeme desetkrát Ahoj:

for i in range(10):

    print("Ahoj")

Řídící proměnná

V průběhu cyklu se mění hodnota řídící proměnné (ve výše uvedeném příkladu je to i). V každém opakování cyklu tak můžeme provést něco trochu jiného v závislosti na aktuální hodnotě této proměnné. Jakých hodnot řídící proměnná nabývá, určuje část za in. Pokud použijeme základní range, bude se řídící proměnná postupně zvětšovat o jedničku. Tento cyklus například vypíše čísla od 0 do 9:

for i in range(10):

    print(i)

V rámci cyklu můžeme využívat více proměnných, pouze u řídící proměnné se však hodnota mění automaticky. Uvažme tento příklad:

y = 1

z = 2

for x in range(10):

    y = x + y + z

    print(x, y, z)

Řídící proměnnou cyklu je x, jehož hodnota se tedy bude postupně měnit (od 0 po 9). U proměnné y se bude hodnota měnit, protože v rámci cyklu máme přiřazovací příkaz do y. Hodnota proměnné z zůstane ve všech opakováních stejná, protože z není řídící proměnná ani do ní v cyklu nic nepřiřazujeme.

Využití range

Při základním použití kombinujeme for cyklus s funkcí range, která vrací interval čísel, a řídící proměnná následně nabývá hodnot z tohoto intervalu.

Pozor: V informatice často počítáme od nuly (nikoliv od jedničky jako normální lidé). Na to narážíme i zde: range(n) vrací hodnoty od 0 do n-1.

Pokud funkci range zadáme dva parametry, tj. voláme range(a, b), dá nám interval čísel od a do b-1. Můžeme zadat i třetí parametr, který udává délku skoku. Příklady:

for x in range(5, 13): print(x, end=" ")     # 5 6 7 8 9 10 11 12

for x in range(5, 16, 3): print(x, end=" ")  # 5 8 11 14

for x in range(8, 0, -1): print(x, end=" ")  # 8 7 6 5 4 3 2 1

For cyklus se dá využít nejen ve spojení s range, ale i obecněji. Můžeme například použít seznamy:

for x in [3, 7, 10]:

    print(x)

Ukázky použití for cyklu

Sudá a lichá

Výpis informace o sudosti a lichosti prvních n čísel:

n = 20

for i in range(1, n+1):

    if i % 2 == 0:

        print(i, "je sudé")

    else:

        print(i, "je liché")
Součet řady čísel

Výpočet součtu čísel od 1 do n:

n = 10

s = 0

for i in range(1, n+1):

    s = s + i

print("Součet od 1 do", n, "je", s)
Mocniny dvojky

Výpis informace o prvních n mocninách dvojky:

n = 10

for x in range(1, n+1):

    print("Dvojka umocněna na", x, "je", 2**x)

Materiál k tisku: čtení kódu

Kromě níže uvedených interaktivních cvičení je k dispozici také materiál k tisku (cvičení na rozlišování mezi podobnými kódy, u kterého se hodí dělat si poznámky na papír):

Čtení kódu: cyklus for řešení
Materiál je dostupný pouze uživatelům s platnou licencí pro daný předmět (učitelům nebo členům rodiny).
🔒

Rozhodovačka

Rychlé procvičování výběrem ze dvou možností.


Cyklus for v Pythonu  
Zobrazit shrnutí tématu


Kód kostky

Navigujte kostku po plánu podle zadaného programu. Procvičení schopnosti číst programy.


Kostky v Pythonu: for cyklus

Základní využití for cyklu v Pythonu je pro opakování nějaké posloupnosti příkazů.



Python želva

Tvorba programů v Pythonu, kreslení obrázků želví grafikou.


Opakování

Nyní využijeme opakování (pomocí for cyklu v Pythonu), což nám umožní snadno vykreslit třeba různé geometrické útvary.

Proměnné

Nyní přidáme proměnné, které nám umožní kreslit obrazce různé velikosti či zatáčet o proměnlivý úhel. To se hodí třeba na pěkné spirály.



Programování v Pythonu

Programování přímo v prohlížeči, s automatickým vyhodnocením správnosti programu.


Cyklus for

Cyklus for s vnořenou podmínkou

V této sadě jsou příklady, které se řeší pomocí cyklu for s vnořenou podmínkou (if).



NAPIŠTE NÁM

Děkujeme za vaši zprávu, byla úspěšně odeslána.

Napište nám

Nevíte si rady?

Před položením dotazu si prosím projděte návody:

Prosíme, nezasílejte dotazy na prozrazení řešení úloh či vysvětlení postupu. Pokud hlásíte chybu, upřesněte prosím, v čem přesně spočívá a připojte snímek obrazovky.

Čeho se zpráva týká?

Vzkaz Hlášení chyby Obsah Ovládání Přihlášení Licence