Python: petlje for i while i kornjača grafika — informatika za 6. razred

Gradivo za 6. razred

Umesto da istu naredbu prepišeš sto puta, zapišeš je jednom i kažeš koliko puta da se ponovi. To je ponavljanje (petlja). U 6. razredu se u Pythonu uče petlja for, koja ponavlja zadati broj puta, i petlja while, koja ponavlja dok važi uslov, a petljom se crta i kornjačom: kvadrat, trougao i drugi pravilni mnogouglovi.

Na ovoj strani ukratko obnavljaš gradivo, a zatim vežbaš u kvizu. Tamo određuješ koliko puta se petlja izvrši i koje vrednosti dobija brojač, pratiš zbir posle svakog prolaza, dopunjuješ red koji zaustavlja petlju i određuješ šta nacrta kornjača. Programe pišeš i pokrećeš na času; kviz vežba da ih čitaš i predviđaš rezultat.

Učitavanje lokalnog napretka...

Vežbaj petlje u Pythonu →

Zašto vežbati petlje na Spremku

Ovde se lako pomešaju range(5) i range(1, 6), broj prolaza i poslednja vrednost brojača, uvučen i neuvučen red, for i while, unutrašnji i spoljašnji ugao. U kvizu brojiš prolaze za različite range, pratiš zbir posle svakog prolaza, upisuješ šta program ispisuje, biraš uslov koji zaustavlja petlju while i određuješ koju figuru crta kornjača. Primeri su u Pythonu, koji koristi većina škola. Kviz prati gradivo informatike za 6. razred, uz svaki odgovor dobijaš objašnjenje na srpskom, a besplatan je i bez registracije.

Gradivo i objašnjenje

Petlja for i range

Petlja for i in range(5): ponavlja uvučene redove ispod sebe, telo petlje, a brojačka promenljiva i u svakom prolazu dobija sledeću vrednost. Najčešća zamka: range(5) počinje od 0 i staje pre 5, pa daje 0, 1, 2, 3 i 4, tj. pet prolaza, a poslednja vrednost je 4. range(2, 6) daje 2, 3, 4 i 5: početak je uključen, a kraj nije, pa je broj prolaza 6 − 2 = 4. Za brojeve od 1 do 10 piše se range(1, 11). Treći broj je korak: range(1, 10, 2) daje 1, 3, 5, 7 i 9. Kada je početak veći od kraja, npr. range(5, 2), telo se ne izvrši nijednom. Neuvučeni red posle petlje izvrši se jednom, na kraju.

Zbir, brojanje i maksimum u petlji

Zbir se računa tako što se pre petlje postavi zbir = 0, a u petlji se u svakom prolazu doda nova vrednost. Ako se zbir = 0 napiše unutar petlje, zbir se u svakom prolazu poništava. Za proizvod početna vrednost je 1, jer bi od 0 svaki proizvod ostao 0. Brojač se povećava za 1 samo kada je uslov tačan, npr. za brojeve deljive sa 3. Kada se traži najveći uneti broj, početna vrednost 0 je zamka: ako su sve temperature negativne, rezultat bi pogrešno bio 0, pa je bolje početi od prvog unetog broja. I promena cene u više koraka radi se u petlji: svaki prolaz računa novu cenu iz trenutne, a ne iz početne.

Petlja while i kornjača

Petlja while ponavlja telo dok je uslov tačan i proverava ga pre svakog prolaza, pa telo može da se ne izvrši nijednom. Prirodna je kada se broj ponavljanja ne zna unapred, npr. učitavaj brojeve dok korisnik ne unese 0. Promenljiva iz uslova mora da se menja u telu, npr. i = i + 1, inače uslov ostaje tačan zauvek i nastaje beskonačna petlja. Posle import turtle, kornjača crta: forward i back je pomeraju napred i nazad i ostavljaju trag, a left i right je samo okreću u mestu. Za pravilni mnogougao sa n stranica okret posle svake stranice je spoljašnji ugao 360 / n: 90° za kvadrat, 120° za trougao, 72° za petougao.

Ključni pojmovi

range(5)

Niz vrednosti 0, 1, 2, 3 i 4 — pet vrednosti, jer brojanje počinje od 0, a 5 nije uključeno.

Brojačka promenljiva

Promenljiva, npr. i, koja u svakom prolazu petlje for dobija sledeću vrednost iz range.

Beskonačna petlja

Petlja while čiji uslov ostaje uvek tačan, jer se promenljiva iz uslova ne menja u telu petlje.

Spoljašnji ugao 360 / n

Ugao za koji se kornjača okrene posle svake stranice pravilnog mnogougla sa n stranica.

Najčešće greške

Pokreni kviz → Pogledaj povezane oblasti

Sledeći korak

Posle kratkog ponavljanja pokreni kviz, a zatim nastavi kroz povezane oblasti ili se vrati na razredni pregled.

Česta pitanja

Zašto range(5) ne daje broj 5?

range počinje od 0 kada je zadat samo jedan broj i uvek staje pre gornje granice. Zato range(5) daje 0, 1, 2, 3 i 4: ukupno pet vrednosti, pa se telo petlje izvrši tačno pet puta.

Kada se koristi for, a kada while?

Petlja for je za ponavljanje zadati broj puta, npr. četiri stranice kvadrata. Petlja while je za ponavljanje dok važi uslov, kada se broj ponavljanja ne zna unapred, npr. dok korisnik ne unese 0.

Za koliko stepeni se okreće kornjača kada crta pravilni mnogougao?

Posle svake stranice za spoljašnji ugao 360 / n, gde je n broj stranica: 90° za kvadrat, 120° za trougao, 60° za šestougao. Kada obiđe ceo mnogougao, kornjača se okrene ukupno za pun krug i gleda u istom smeru kao na početku.

Pokreni kviz →