PDA

Prikaži potpunu verziju : Pascal: naredba WHILE


Krilce
5.3.2009, 18:35
Ova naredba mi nije bas potpuno jasna, pa bih molio ako neko moze da mi je detaljnije objasni. Hvala!

Stevvan
5.3.2009, 19:11
Pa jednostavno je: naredbe unutar while petlje se ponavljaju sve dok uslov nije ispunjen.

while uslov do naredba;

Ako razumes for petlju, shvati da je razlika sto se u for petlji tacno zna koliko ce se puta naredba obaviti dok u while petlji to radis sve dok odredjen uslov nije zadovoljen :)
Nadam se da sam pomogao

Krilce
5.3.2009, 19:43
Pa jednostavno je: naredbe unutar while petlje se ponavljaju sve dok uslov nije ispunjen.

while uslov do naredba;

Ako razumes for petlju, shvati da je razlika sto se u for petlji tacno zna koliko ce se puta naredba obaviti dok u while petlji to radis sve dok odredjen uslov nije zadovoljen :)
Nadam se da sam pomogao

E hvala puno. Evo jos jednog primera da profesori u Srbiji nemaju pojma sa objasnjavanjem. NJemu je trebalo 45 minuta i niko nis nije razumeo, a ti si mi objasnio sve u jednoj recenici... Hvala jos jednom!

VojaM
6.3.2009, 17:33
Tačnije rečeno, While-Do petlja se vrti SAMO za vreme dok je uslov zadovoljen. Uslov se proverava u svakom ponavljanju petlje. Kad uslov više nije zadovoljen, iz petlje se izlazi.

Suprotna stvar je Repeat-Until petlja. Ona se vrti za vreme dok uslov NIJE ispunjen, a čim uslov bude ispunjen, izlazi se iz petlje.

Malo je teže za shvatanje uglavnom zato što se u našem jeziku obe reči (while i until) prevode sa "dok", tako da je potrebno ubaciti još neku reč da bi na srpskom bilo nedvosmisleno.

Dakle, while se može prevesti "za vreme dok" (While he was writing his homework, he was tapping with his foot), a until "sve dok ne (bude)" (He is supposed to pour the water until the bottle is full).
Dok radi domaći, tapka nogom. Sve dok je ispunjen uslov (da radi domaći), on i tapka nogom (izvršava naredbe u petlji). Kad više nije ispunjen uslov (završio je domaći), prestaće i da tapka nogom i nastaviće da radi ono što je sledeće planirao ;) A u drugom primeru, tip će prvo da sipa vodu, pa će proveriti da li je flaša puna, pa ako nije ponovo će da sipa vodu itd. Kad jednom flaša bude puna, prestaće da sipa vodu i radiće ono što mu je sledeće.

Ima još jedna razlika između ove dve petlje. Kod While-Do petlje uslov se proverava na početku, onda se izvršava grupa naredbi u petlji, zatim se skače na početak, opet proverava uslov itd. Kod Repeat-Until prvo se izvršava grupa naredbi u petlji, pa se tek posle toga istpituje uslov i po potrebi skače na početak petlje ili izlazi iz petlje. Zato While zovu petlja sa izlazom na vrhu, a R-U petlja sa izlazom na dnu.

Stevvan
6.3.2009, 17:38
Lol nisam ni primetio da sam napravio takvu jezicku gresku :)