PΩtle s▒ bardzo wa┐nym elementem ka┐dego programu. To dziΩki nim, program mo┐e byµ bardziej skomplikowany lub te┐ - bardziej prostszy. Za pomoc▒ instrukcji warunkowych program odpowiednio mo┐e dostosowaµ swoje dalsze dzia│anie. Do instrukcji warunkowych nale┐y instrukcja: IF warunek THEN akcja. Mo┐e ona byµ rozbudowana o s│owo ELSE, kt≤re - jak sama nazwa wskazuje - wykona instrukcjΩ w przypadku niespe│nienia warunku. Przyk│ad: 

... 
writeln(' Podaj liczbΩ o kt≤rej my╢lΩ '); 
readln(x); 
if x=y then writeln(' Zgad│e╢!!!') 
else writeln('¼le!!!'); 
... 

Oczywi╢cie instrukcje, kt≤re zostan▒ wykonane po spe│nieniu danego warunku nie musz▒ byµ takie 'ubogie'. Je┐eli chcieliby╢my umie╢ciµ wiΩcej instrukcji po s│owie 'then', to wtedy musimy rozpocz▒µ je s│owem 'begin' i zako±czyµ s│owem 'end'. Kolejna instrukcja warunkowa to CASE...OF...ELSE. Przyk│ad zastosowania: 

... 
write(' Podaj dzie± tygodnia'); 
readln(x); 
case x of 
1:writeln('poniedzialek'); 
2:writeln('wtorek'); 
3:writeln('sroda'); 
4:writeln('czwartek'); 
5:writeln('piatek'); 
6:writeln('sobota'); 
7:writeln('niedziela'); 
else 
writeln('Tydzien ma tylko SIEDEM dni!'); 
... 

NastΩpn▒ instrukcj▒ warunkow▒ jest REPEAT instrukcje UNTIL warunek. InstrukcjΩ tΩ mo┐na wykorzystaµ jako czekanie na naci╢niΩcie klawisza, tzn. wstrzymanie pracy programu do momentu naci╢niΩcia dowolnego klawisza. Wtedy ma ona postaµ REPEAT UNTIL KEYPRESSED. Przyk│ad: 

... 
repeat 
write('10101'); 
delay(100); 
until keypressed 
... 

NastΩpnym rodzajem instrukcji s▒ instrukcje iteracyjne, czyli powtarzaj▒ce. Przyk│adem takiej instrukcji jest konstrukcja FOR zmienna:=poczatek TO koniec DO. Przyk│ad: 

... 
for x:=1 to 10 do writeln('Napis'); 
... 
Efektem bΩdzie napisanie 10 razy s│owa 'Napis'. Oczywi╢cie mo┐na umie╢ciµ dowoln▒ liczbΩ instrukcji po s│owie 'DO', lecz wtedy nale┐y pamiΩtaµ o ich rozpoczΩciu s│owem 'begin' a zako±czeniu s│owem 'end'. Podobn▒ instrukcj▒ jest FOR zmienna:=poczatek DOWNTO koniec DO. Dzia│a ona dok│adnie tak samo, jak poprzednia, z tym, ┐e warto╢µ zmiennej jest zmniejszana a┐ do osi▒gniΩcia warto╢ci r≤wnej zmiennej 'koniec'. Przyk│ad: 

... 
for x:=10 downto 1 do writeln('Napis'); 
... 

Ostatni▒ z instrukcji jest WHILE warunek DO. Przyk│ad: 

... 
writeln(' Ile razy mam wypisac cyfre 1? '); 
readln(x); 
while x>0 do 
begin 
writeln('1'); 
ile:=ile-1; 
end; 
... 

W podanym przyk│adzie instrukcja 'while' pos│u┐y nam do wypisania cyfry '1' dok│adnie tyle razy, ile za┐yczy sobie u┐ytkownik. Jest zastosowany prosty licznik, kt≤ry zmniejsza ilo╢µ powt≤rze± pozosta│ych do wykonania (tzn. zmniejsza ilo╢µ '1' pozosta│ych do wypisania). 
 
PhoeniX 
red_red_phoenix@kki.net.pl