předchozí lekce (1.11) | obsah kurzu | následující lekce (1.13) |
POKUD hotovost > 20 POTOM
půjdu do kina
JINAK
budu se dívat na televizi
KONEC
Uvedenému zápisu se říká algoritmus a popisuje schematicky postup prováděných akcí.
Vztahu hotovost>20 se říká podmínka. Podmínka nám tedy určuje, jaká akce se bude
provádět. Zápis algoritmu je nutné pro počítač převést do programu. Například
následujícím způsobem:
Program hotovost;
var
hotovost : Integer;
begin
hotovost := 15; {zadejte vaši hotovost}
if hotovost > 20 then
Writeln('Kino') {pokud je podmínka splněna}
else
Writeln('Televize'); {pokud není podmínka splněna}
end;
end.
Nejprve jsme deklarovali proměnnou se jménem hotovost. Dále jsme jí v programu
přiřadili určitou hodnotu. V podmínce jsme potom zjišťovali, zda odpovídá našim
požadavkům a podle toho jsme provedli určitou akci. Zkuste si zadat sami různé hodnoty
stavu vaší hotovosti.
Podmínka se v programu zadává klíčovým slovem If, za kterým musí následovat
vyhodnocovaná podmínka. Za klíčovým slovem Then se uvede akce, která se provede
při splnění podmínky. Po uvedení klíčového slova else je možné uvést akci, která se má
provést v případě nesplnění podmínky. Všimněte si, že mezi then a else je možné uvést
pouze jeden příkaz, který nesmí být navíc ukončen středníkem. Pokud byste požadovali
uvést v rámci podmínky více příkazů, museli byste je uvést v bloku ohraničeném
klíčovými slovy begin a end. Viz následující příklad:
Unit podminka;
interface
implementation
var
plat : Integer;
begin
plat := 12000; {zadejte vaši hotovost}
IF plat > 15000 then
begin
Writeln('Do práce jezdím autem');
Writeln('Bydlím v rodinném domku');
Writeln('Dovolená u moře');
end
else
begin
Writeln('Do práce jezdím vlakem');
Writeln('Bydlím v paneláku');
Writeln('Dovolená na koupališti');
end;
end;
end.
Všimněte si, že jsme v programech u zápisu podmínky odsadili vykonávané příkazy
na řádku o tři znaky. Tím vynikla struktura podmínky a na první pohled je viditelné její
rozčlenění. Není to sice nutnost, přesto však doporučujeme uvedenou grafickou podobu
zápisu programu ve vlastním zájmu dodržovat.
Podmínku představuje logický výraz, který udává, zda je podmínka splněna nebo ne.
Logické výrazy mohou mít proto výsledek pouze pravda nebo nepravda. V počítačové
terminologii True (pravda) nebo False (nepravda). Pokud byste chtěli výsledek
podmínky deklarovat jako proměnnou, museli byste použít typ BOOLEAN. Logická
podmínka zpracovává nejčastěji matematický výraz. Může to však být i výraz zpracovávající
řetězce, to však bude psáno až se naučíme s řetězci důkladněji pracovat.
Matematické výrazy porovnávají nejčastěji několik hodnot. Ve výrazu se přitom
může také použít libovolného matematického výpočtu, který je v jazyce definován.
Matematické výrazy zpracovávají aritmetické operace. Výrazy se skládají z operátorů
a operandů. Operátor je přitom porovnávaná hodnota a operand je způsob porovnání
hodnot. Operátor může představovat libovolný matematický výpočet, který je v jazyce
definován. Operand slouží k vyhodnocení operátorů. Používají se následující dostatečně
známé operandy:
> větší než
>= větší nebo rovno než
< menší než
<= menší nebo rovno než
= rovno
<> nerovno
Ve výrazu je samozřejmě možné používat závorky. Příklad výrazů zpracovávajících
matematický výpočet:
hotovost > 20
a/2 < 10
2*(a+b) = 2*a+2*b
Výrazy můžeme dále v jedné podmínce spojit logickým operátorem s dalším výrazem a
vyhodnocovat tak složenou podmínku. Používají se přitom následující logické operátory:
AND a zároveň platí
OR platí jeden nebo druhý výraz
NOT není pravda, negace výrazu
V případě použití logických operátorů mají tyto ve vyhodnocování výrazů
přednost před ostatními operátory. Dále se vyhodnocují závorky a až na konci
matematické výpočty. Pokud budete chtít zapsat v programu několik výrazů spojených
logickým operátorem, musíte umístit výrazy do závorek. Například pro zjištění rozsahu
hotovosti od 10 Kč do 30 Kč použijete následující zápis:
if (hotovost >= 10) and (hotovost <= 30) then
Writeln('Kino') {pokud je podmínka splněna}
else
Writeln('Televize'); {pokud není podmínka splněna}
V této lekci jsme si probrali mimo možnosti rozvětvení činnosti programu také způsob
zápisu podmínek v programu. Podmínky se v programu používají i v dalších příkazech.
Například pro zadání počtu opakování zvolené části programu, jak si ukážeme v
následující lekci.
předchozí lekce (1.11) | obsah kurzu | následující lekce (1.13) |