While/fi

From Free Pascal wiki
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Deutsch (de) English (en) suomi (fi) français (fr) русский (ru)

while ehto-lauseke do suoritettava lauseke (tai lohko). Tämän luupin yhteydessä toistetaan lauseketta niin kauan kuin ehdon arvo on true. Ehto-lauseke arvioidaan ennen kutakin iterointia, määritetään, suoritetaanko seuraava lohko (tai yksittäinen lauseke). Tämä on tärkein ero repeat until-silmukkaan, jossa lohko suoritetaan joka tapauksessa, mutta seuraavat iteraatiot eivät välttämättä tapahdu.

Seuraava esimerkki sisältää saavuttamattoman koodin:

1program whileFalse(input, output, stderr);
2
3begin
4	while false do
5	begin
6		writeLn('Tätä ei koskaan tulosteta');
7	end;
8end.

Yleensä käytetään while-silmukoita, missä, toisin kuin for-silmukassa, juoksevaa indeksi muuttujaa ei tarvita, suoritettua lohkoa ei voida päätellä indeksistä, jota on lisätty yhdellä tai vältetään break-lausetta (joka yleensä ilmaisee huonoa ohjelmointityyliä).


 1program whileDemo(input, output, stderr);
 2
 3var
 4	x: integer;
 5begin
 6	x := 1;
 7	
 8	// prints non-negative integer powers of two
 9	while x < high(x) div 2 do
10	begin
11		writeLn(x);
12		inc(x, x); // x := x + x
13	end;
14end.

Katso myös


Keywords: begindoelseendforifrepeatthenuntilwhile