Stránky neboli dlhú dobu aktualizované. Môžu obsahovať nepresné alebo neaktuálne informácie.
Hľadanie
Rozšírené vyhľadávanie
TOP 7 - stránky
Napaľovacie programy - 108 528x
Free Pascal - Úvod - 66 084x
Lazarus - Kreslenie - 47 614x
Free Pascal - Začiatky - 44 922x
Free Pascal - Podmienky - 37 256x
Free Pascal - Cykly - 36 496x
Internetové prehliadače - 36 406x
Nové v diskusii
Free Pascal - Cykly - štvrtok 31.3.
Lazarus - Začíname - piatok 25.3.
Anketa - streda 2.3.
Navigácia: Programovanie > Free Pascal - Logické výrazy

Free Pascal - Logické výrazy

Logický výraz môže nadobúdať vždy len dve hodnoty - true (pravda) alebo false (nepravda). Súčasťou výrazov môžu byť operátory.

Premenná s logickou hodnotou

Tento typ premennej označujeme boolean.

program logicke;
var
 hodnota: boolean;
begin
 hodnota := true;
end.

Spomenutý príklad nemá žiaden praktický význam. Nadobudne ho pri použití podmienky. Najprv sa však naučíme logické operátory.

Binárne logické operátory

Vkladáme ich medzi dva výrazy (číselné a pod.). Použijeme ich najmä pri porovnávaní dvoch číselných hodnôt, aj keď celkové možnosti ich využitia sú väčšie. Pozrime si nasledujúci zoznam:

Logické operátory porovnávania
= rovná sa
< je menší ako
<= je menší alebo rovný
> je väčší ako
>= je väčší alebo rovný
<> nerovná sa

Ukážme si nejaký príklad.

program log_op;
var
 a: boolean;
begin
 a := 5 < 7;
 writeln(a);
 writeln(15 = 16);
end.

Program napíše:

TRUE
FALSE

Samozrejme, že logické hodnoty sa v bežných programoch nezvyknú priamo vypisovať na obrazovku, ale použije sa podmienka.

Unárny logický operátor

Unárny logický operátor not vkladáme pred výraz. Má za úlohu negovať ho. Ak bol pôvodný výraz pravdivý, výsledný bude nepravdivý a naopak.

program unarny_o;
var
 hodnota: boolean;
begin
 hodnota := not (12 > 5);
 writeln(hodnota);
end.

Program vypíše na obrazovku:

FALSE

Zložené výrazy

Skladajú sa z dvoch, prípadne viacerých jednoduchých výrazov. Tie spájame operátormi and, or, xor a zátvorkami.

Pri použití operátora and bude výsledný výraz pravdivý (true), ak sú obidva jednoduché výrazy pravdivé.

program zlozene1;
var
 hodnota: boolean;
begin
 hodnota := (1 < 5) and (6 > 3);
 writeln(hodnota);
end.

Keďže 1 je menšie ako 5 a zároveň 6 je väčšie ako 3, program zobrazí TRUE.

Poďme sa pozrieť na operátor or. Ten urobí zložený výraz pravdivým, ak aspoň jeden jednoduchý má hodnotu true.

program zlozene2;
var
 hodnota: boolean;
begin
 hodnota := (1 <= 1) or (6 > 7);
 writeln(hodnota);
 writeln((2 = 6) or (19 <> 19));
end.

Aplikácia vypíše najprv TRUE, pretože aspoň jeden výraz bol pravdivý, potom FALSE, lebo boli obidva nepravdivé.

Teraz si ukážeme príklad na operátor xor, pri ktorom má zložený výraz pravdivú hodnotu, len ak je práve jeden jednoduchý pravdivý.

program zlozene3;
begin
 writeln((5 = 5) xor (10 > 1));
 writeln((1 < 6) xor (7 <> 7));
end.

Toto je výsledkom:

FALSE
TRUE
Hodnotenie
1 2 3 4 5 (ako v škole)
Priemerná známka: 2,13
Diskusia k tejto stránke Príspevok na túto tému zatiaľ neexistuje. Môžete pridať prvý z nich!
Prejsť do diskusie»
2005-2012, Matúš Sulír, matus.sulir (zav) gmail bodka com. Gen.: 0,189 s. Valid XHTML, CSS.