Instrukcja Warunkowa IF ... THEN ... [ELSE ...]
Instrukcja ta sprawdza czy jest spełniony warunek postawiony po "IF", jeżeli tak to wykonywana jest instrukcja po słowie "THEN". Można jeszcze po THEN użyć słowa ELSE oznaczającego "w przeciwnym wypadku", umieszczona po ELSE instrukcja zostanie wykonana dopiero wtedy, gry warunek postawiony po "IF" NIE ZOSTAŁ SPEŁNIONY np:
Var
x:Byte;
Begin
Write('Podaj liczbę z zakresu 0..255 : ');
ReadLn(x);
IF x>100 THEN WriteLn('Podałeś liczbę większą niż 100') ELSE WriteLn('Podałeś liczbę równą lub mniejszą od 100');
End.
Instrukcja IF sprawdza czy wpisana liczba jest większa od 100 jeżeli tak to wykonuje instrukcję po THEN i wypisuje tekst, jeżeli nie znaczy to, że liczba jest mniejsza lub RÓWNA 100! i wtedy pomija instrukcję po THEN ale widzi że jest jeszcze instrukcja ELSE i wykonuje wtedy to, co po niej się znajduje.
Gdyby liczba była większa niż 100, nie wykonałby nic co znajdowałoby się po instrukcji ELSE !
Pętla REPEAT ... UNTIL ...
w pewnym sensie instrukcja grupująca i jest traktowana jak jedna instrukcja (podobnie jak Begin...End). Pętla zaczyna się słowem kluczowym REPEAT dalej znajdują się linie do wykonania a zakończona jest słowem UNTIL i warunkiem, który jeżeli zostanie spełniony przerywa pętlę i kontynuuje program, jeżeli nie, powraca na początek (po REPEAT) i wykonuje instrukcje pomiędzy nimi po raz kolejny i znowu dochodzi do UNTIL, znowu sprawdza warunek itd. jest to pętla która zostanie CO NAJMNIEJ RAZ WYKONANA, gdyż warunek znajduje się dopiero na końcu
Przykład:
Uses CRT;
Var
licz:byte;
Begin
ClrScr;
REPEAT
Write('Wpisz jakąś liczbę (0-wyjscie) : ');
ReadLn(licz);
WriteLn('Potega liczby ',licz,' to ',licz*licz);
WriteLn;
UNTIL licz=0;
End.
Pętla FOR...TO...DO...
Składnia: FOR zmienna:= liczba1 TO liczba2 DO ...
Jest to taka pętelka która wykonuje się określoną ilość razy np.
Var
t:word;
BEGIN
FOR t:=1 TO 15 DO WriteLn('petelka :)');
END.
Chodzi o to by program wyświetlił 15 razy tekst 'petelka :)' a kolejne kawałki to :
FOR - Licz
t:= - używając zmiennej t
1 - od 1
TO - do
15 - 15
DO - wykonując
WriteLn('petelka :)'); - wyświetl tekst
Komputer napotykając na takie coś przy kolejnych przejściach robi:
1. Jeżeli to 1 przejście to do zmiennej "t" wstawia liczbę 1, jeżeli kolejne to zwiększa zmienną "t" o 1
2. Wyświetla tekst
3. Sprawdza czy "t=15" jeżeli tak to przerywa pętle, jak nie wraca do 1.
DOWNTO
Licz od 23 W DÓŁ do 6 i wyświetlaj zawartość zmiennej
Var
t:word;
BEGIN
FOR t:=23 DOWNTO 6 DO WriteLn( t );
END.
CASE
Case - pod warunkiem
Np.
case Znak of
'a' : Procedural;
'b' : Procedura2
else
Procedura3
end;
Znak- a lub b