Nova znanja prikazuju naredbe i algoritme koje treba upoznati kroz kratku teoriju i općenite primjere.
Pravo razumijevanje i primjena novih znanja razvijaju se kroz riješene primjere, a usvojenost znanja provjerava se zadatcima za samostalni rad.
| Novo znanje / obrazac | Što učenik treba znati |
|---|---|
while |
ponavljati dok se neki uvjet ne ispuni |
break |
prekinuti petlju čim je pronađeno rješenje |
| tekst kao podatak | pristup znakovima, s[i], in, spajanje znakova |
| klizni prozor | pamtiti samo prethodni 1–2 podatka |
| ugniježđene petlje | npr. prolaz kroz brojeve pa kroz znamenke svakog broja |
| složenija simulacija | istodobno pratiti nekoliko stanja/brojača |
| svođenje na zajedničku jedinicu | dane, sate, novac i sl. pretvoriti u jednu jedinicu |
| aritmetički nizovi | prvi, zadnji član i zbroj bez dugog simuliranja |
| generiranje malog broja mogućnosti | izračunati sve dopuštene kandidate i odabrati najbolji |
| najveći i drugi najveći | pratiti dvije najbolje vrijednosti i njihove oznake |
| linearizacija vremena/datuma | datum pretvoriti u redni broj dana, računati, pa vratiti datum |
| siguran ishod | odrediti trenutak nakon kojeg preostali događaji više ne mogu promijeniti rezultat |
| proizvoljna znamenka broja | koristiti 10 ** k za dohvat, izmjenu ili brisanje znamenke |
while – kada ne znamo broj ponavljanjaNa školskoj razini uglavnom znamo koliko puta nešto ponavljamo:
for i in range(n):
...
Sada se pojavljuju situacije tipa:
Ponavljaj sve dok se ponovno ne pojavi početno stanje.
Tada koristimo:
while uvjet:
naredbe
Primjer:
n=int(input())
while n>=10:
n=n//10+n%10
print(n)
Ne znamo unaprijed koliko će se puta petlja izvršiti.
while True i breakJoš je korisniji obrazac: