While/fi
│
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: begin — do — else — end — for — if — repeat — then — until — while