<< Vlastnosti Pascalu | Pascal - obsah | Datové typy v Pascalu >>

Přehled programových struktur

Sekvence příkazů BEGIN - END

  • skupina příkazů, které se vykonávají za sebou - sekvenčně
  • využití klíčových slov BEGIN a END
  • jednotlivé příkazy se oddělují středníkem
  • za BEGIN a poslední příkaz se středník nezapisuje
    • vzniká zbytečně prázdný příkaz
begin
   Příkaz 1;
   Příkaz 2;
   ...... ;
   Příkaz n
end;

Podmíněný příkaz IF

Neúplná podmínka IF - THEN

  • nejprve se vyhodnotí podmínka za příkazem if
  • pokud má hodnotu true, provede se Příkaz1
  • pokud má hodnotu false, neprovede se nic, příkaz je bez účinku.
if Podmínka then Proces1 ;

Úplná podmínka IF - THEN - ELSE

  • nejprve se vyhodnotí podmínka za příkazem if
  • pokud má hodnotu true, provede se Příkaz1
  • pokud má hodnotu false, provede se Příkaz2
if Podmínka then Příkaz1
->else Příkaz2 ;

Příklady

if (a > b) then a := a - b
else b := b - a ;
if (a > c) then
begin
s := s + a ;
z := z * c
end
else c := c - a ;
if (a > d) then s := s + a
else
begin
a := -a ;
z := z + 1
end;

Cykly

  • příkazy cyklů umožňují opakování příkazů nebo sekvencí příkazů
  • Pascal nabízí tři druhy cyklů :
    • 1. cyklus řízený proměnnou - for
    • 2. cyklus řízený splněním počáteční podmínky - while
    • 3. cyklus řízený splněním koncové podmínky - repeat.

Cyklus FOR

  • cyklus řízený proměnnou
  • počet opakování je dán řídící celočíselnou proměnnou (počítadlo cyklu)
  • počet opakování nastavují mezní hodnoty proměnné
  • hodnota celočíselné řídící proměnné se v každém cyklu zvyšuje nebo snižuje o 1

Syntaxe

  • Cyklus s rostoucí řídící proměnnou
for ridici_prom := pocatecni_hodn to koncova_hodn do ||
begin
Prikaz1 ;
Prikaz2 ;
...
PrikazN ;
end;
  • Cyklus s klesající řídící proměnnou
for ridici_prom := pocatecni_hodn downto koncova_hodn do ||
begin
Prikaz1 ;
Prikaz2 ;
...
PrikazN ;
end;

Příklad

for rp := 1 to 10 do
begin
pole[rp] := 15 * rp ;
a := 10 + rp / 2 ;
end;

Cyklus WHILE

  • cyklus řízený vstupní podmínkou
  • při splnění podmínky dojde k provedení příkazů v cyklu
  • při nesplnění podmínky se cyklické zpracování ukončí a provádí se další příkazy
  • možno přeložit "dokud platí podmínky, pak vykonej příkazy cyklu"

VD a syntaxe

-.

while Podminka do Prikaz ;

  • cyklus nemusí být vůbec použit (při nesplnění podmínky hned na počátku)

Cyklus REPEAT

  • cyklus řízený výstupní podmínkou
  • při nesplnění podmínky dojde k opětovnému provedení příkazů v cyklu
  • při splnění podmínky se cyklické zpracování ukončí a provádí se další příkazy
  • možno přeložit "vykonej příkazy cyklu a pokud neplatí podmínka, tak příkazy znovu opakuj"

VD a syntaxe

repeat

Příkaz;

until Podmínka ;

  • příkazy cyklu budou vykonány vždy alespoň jednou
  • sekvence příkazů je uzavřena v cyklu klíčovými slovy repeat - until
  • tato slova nahradí begin - end

Větvení programu - přepínač CASE - OF

  • přepínač umožňuje vícenásobně větvit strukturu programu vyhodnocením podmínky
  • využívá se příkaz case.

VD a syntaxe

case Podminka of
Vysledek1 : Prikaz1 ;
Vysledek2 : Prikaz2 ;
Vysledek3 : Prikaz3 ;
...
...
VysledekN : PrikazN
else
PrikazP
end;

Příklad

case den of
pondeli ..patek : writeln('Tento den je pracovni den.') ;
sobota : writeln('Tento den je sobota.') ;
else
writeln('Tento den je nedele.') ;
end;
RSS