Ključna razlika – for vs while petlja
Program je skup uputa napisanih u programskom jeziku za obavljanje određenog zadatka. To može biti logička operacija ili matematička operacija. Općenito, naredbe u programu se izvršavaju jedna za drugom. Ponekad je potrebno iznova i iznova izvršavati skup naredbi. Za postizanje ovog zadatka koriste se upravljačke strukture. Dva od njih su for i while petlja. Ove strukture pomažu u izvršavanju niza koda sve dok zadani uvjet nije istinit. Sintaksa for petlje sastoji se od inicijalizacije, testnog izraza i ažuriranog izraza. Sintaksa while petlje sadrži testni izraz. Ovaj članak govori o razlici između for i while petlje. Ključna razlika između for i while petlje je u tome što se for petlja može koristiti kada je poznat broj ponavljanja, a while petlja se može koristiti kada broj ponavljanja nije poznat.
Što je for Loop?
Petlja for koristi se u mnogim programskim jezicima kao što su C, Java itd. Koristi se za višestruko izvršavanje skupa izjava. Sintaksa for petlje je sljedeća.
za (inicijalizacija; testni izraz, ažuriranje){
//izjave unutar for petlje
}
Inicijalizacijski izraz se izvršava samo jednom. Zatim se ispitni izraz procjenjuje. Testni izraz može sadržavati varijable, vrijednosti, konstante i operatore. To je Booleov izraz. Ako je procijenjeni izraz istinit, izvršava se kod unutar for petlje. Nakon što se postigne kraj petlje, izvršava se izraz ažuriranja. To može biti povećanje ili smanjenje. Ponovo se provjerava testni izraz. Ako je procijenjeni izraz istinit, izvode se naredbe unutar for petlje. Na kraju petlje izvršava se izraz ažuriranja. Ovaj se proces ponavlja sve dok testni izraz ne bude lažan. Kada je testni izraz lažan, for petlja završava i kontrola se prosljeđuje sljedećoj naredbi nakon for petlje.
Slika 01: Program s for petljom za izračunavanje zbroja 5 brojeva
Gornji program treba pronaći zbroj prvih pet brojeva, koji su 1, 2, 3, 4 i 5. U for petlji, i je 1. Manje je od 5. Dakle, izračunava se zbroj. U početku je zbroj 0. Dodaje se i koji je 1. Zbroj se dodjeljuje varijabli zbroj. Sada je zbroj 1. Zatim se procjenjuje izraz ažuriranja. I se povećava za jedan. Sad imam 2. Manji je od 5. Dakle, zbroj je izračunat. Prethodna vrijednost zbroja je 1 i dodaje se vrijednosti i koja je 2. Sada je zbroj 3. Izraz za ažuriranje se procjenjuje i i se povećava za 1. Sada je 3. Ovaj se proces ponavlja. Kada i postane 6, izraz postaje lažan jer 6 nije jednako ili manje od 5. Stoga, for petlja završava. Na kraju se zbroj svih pet brojeva ispisuje na ekranu.
Što je while petlja?
While petlja izvršava ciljne naredbe sve dok je dani uvjet istinit. Sintaksa while petlje je sljedeća.
while(testni izraz){
//izjave unutar while petlje
}
While petlja sadrži testni izraz. To je Booleov izraz. Ako je procijenjeni izraz istinit, tada se izvode naredbe unutar petlje while. Na kraju tih iskaza testni izraz se ponovno vrednuje. Ovaj se proces ponavlja sve dok testni izraz ne postane lažan. Kada postane false, while petlja završava i kontrola se prosljeđuje naredbi nakon while petlje.
Slika 02: Program s while petljom za izračunavanje zbroja 5 brojeva
Prema gornjem programu, zbroj je inicijaliziran na 0, a i je inicijaliziran na 1. U while petlji, vrijednost i se procjenjuje. Manji je od 5. Dakle, zbroj je izračunat. Početna vrijednost zbroja je 0. Dodaje se i vrijednosti 1. Sada je zbroj 1. Zatim se i vrijednost povećava za jedan. Sada je i vrijednost 2. Manja je od 5. Dakle, zbroj je izračunat. Trenutni zbroj koji je 1 dodaje se vrijednosti i koja je 2. Sada je zbroj 3. Opet se povećava vrijednost i. Sada je i vrijednost 3. Ovaj se proces ponavlja. Kada vrijednost i postane 6, izraz postaje lažan jer nije manji ili jednak 5. Dakle, while petlja završava. Na kraju se vrijednost zbroja ispisuje na ekranu. Ako nije bilo povećanja kao što je i++, tada vrijednost i ostaje ista što je 1. Manje je od 5. Uvjet je istinit uvijek. Dakle, to će biti beskonačna petlja.
Koje su sličnosti između for i while petlje?
- I for i while petlja su kontrolne strukture ponavljanja u programiranju.
- Izvršenje petlje ovisi o testnom izrazu.
Koja je razlika između for i while petlje?
for vs while petlja |
|
Petlja for je kontrolna struktura ponavljanja koja omogućuje programeru da učinkovito napiše petlju koja se mora izvršiti određeni broj puta. | While petlja je kontrolna struktura ponavljanja koja izvršava ciljne naredbe sve dok je dani uvjet istinit. |
Upotreba | |
Petlja for se može koristiti kada je poznat broj ponavljanja. | While petlja se može koristiti kada broj ponavljanja nije poznat. |
Inicijalizacija | |
Inicijalizacija se događa jednom u for petlji. | U while petlji, ako je naredba za inicijalizaciju unutar petlje, tada se inicijalizacija vrši svaki put kada se petlja ponavlja. |
Sažetak – petlja za vs while
U programiranju je ponekad potrebno ponoviti skup izjava više puta. Za postizanje ovih zadataka postoje strukture za kontrolu ponavljanja. Dva od njih su for i while petlja. Razlika između for i while petlje je u tome što se for petlja koristi kada je poznat broj ponavljanja, a while petlja se koristi kada broj ponavljanja nije poznat.