|
IF THEN ELSE |
|

|
| Główna instrukcja strukturalna wyboru
PRZYKŁAD: |

IF x THEN a ELSE
b |
| PROGRAM
wartosc_bezwzgledna; |
VAR a, b: INTEGER;
|
BEGIN |
|
WRITELN(‘ Podaj liczbę ‘);
READLN(a); |
|
IF
a >= 0 THEN b:=
a |
|
ELSE b:=-a;
|
|
WRITELN(‘Wartość bezwzględna
wynosi:‘,b); |
|
READLN;
|
| END. |
|
| Uzupełniająca instrukcja strukturalna. Jest ona
szczególnym przypadkiem instrukcji IF THEN ELSE. Gdy
warunek X zachodzi wykonana jest akcja A, natomiast, gdy nie
zachodzi, następuje zakończenie działania instrukcji bez
jakiejkolwiek akcji.
Porządkowanie zmiennej jej wartości
bezwzględnej:
IF A<0 THEN
A:=-A; |
IF x THEN
a |
|
|
WHILE DO |
|

|
| Główna instrukcja strukturalna pętli
PRZYKŁAD: |
WHILE x DO
a |
| PROGRAM suma_kolejnych_liczb; |
| VAR n: INTEGER; |
| suma: INTEGER; |
| BEGIN |
| WRITE('Podaj liczbę:
'); READLN(n); |
| suma:=0; |
|
WHILE n>0 DO |
| BEGIN |
| suma:=suma + n; |
|
n:=n-2 |
| END; |
| WRITELN('Suma =
',suma); |
| END. |
|
| Uzupełniająca instrukcja wyboru. Jest ona
rozszerzeniem tego wyboru na większą liczbę akcji.
PRZYKŁAD: |
|
| PROGRAM
rodzaj_liczby; |
| VAR liczba:INTEGER; |
| BEGIN |
| WRITE('Podaj
liczbę: '); READLN(liczba); |
| CASE
liczba OF |
| 0..9
:WRITELN('Jednocyfrowa'); |
| 10..99
:WRITELN('Dwucyfrowa'); |
| 250..300 :WRITELN('Spoza
wybranego przedziału'); |
| END; |
| END. |
|
|
REPEAT
UNTIL
|
|

|
| Uzupełniająca strukturalna instrukcja pętli.
Jest podobna do instrukcji WHILE DO ale tu sprawdzenie
warunku następuje nie przed lecz po akcji (akcja A musi być
wykonana co najmniej raz).
PRZYKŁAD: |
REPEAT a UNTIL
x |
| PROGRAM
_repeat; |
| VAR liczba:
INTEGER; |
| BEGIN |
| REPEAT |
| |
WRITELN('Podaj 0 by
skończyć'); |
| |
WRITE('Podaj liczbę: ');
READLN(liczba); |
| |
WRITELN('Odczytano liczbę:
',liczba); |
| UNTIL liczba =
0 |
| END. |
|
|
FOR DO |
|

|
| Uzupełniająca strukturalna instrukcja pętli.
Instrukcję tę stosuje się wtedy, gdy z góry wiadomo, ile razy
ma wykonać się pętla. Zmiany te mogą odbywać się w
następującym kierunku: |

|
|
NARASTAJĄCYM
FOR I:=I_min TO I_max
DO |
|
MALEJĄCYM
FOR I:=I_max
DOWNTO I_min DO |
| PRZYKŁAD: |
| PROGRAM for_do; |
| VAR i: INTEGER; |
| BEGIN |
| FOR i:=1
TO 3 DO |
|
WRITELN('********'); |
| END. |
|
|