Pascal - tahák
Ovládání uživatelského prostředí:
F2 - uložit
F9 - zkompilovat (zkontrolovat chyby)
CTRL + F9 - spustit program
Pokud na konci program něco vypisuje a není za tím čekání na klávesu, program skončí a přes něj se opět otevře Pascalovské. Potřebujeme-li se podívat za toto okno, stiskneme ALT + F5.
Struktura programu
uses crt,dos; { deklarace knihoven } var a,b: integer; { deklarace proměnných } s : string; begin { samotný program } . . . end.
Základní typy proměnných
- integer - celočíselná (přibližně -32.000 až 32.000)
- byte - celočíselná (0 - 255)
- string - text až 255 znaků (vlastně pole charů)
- char - jeden znak
- boolean - nabývá jen hodnot true a false (pravda nebo lež)
Základní příkazy pro textový režim
Pokud tomu v programu není jinak, běží v textovém režimu. To je režim o 80x25 (80x50 ve winXP) znacích na obrazovce.
write('ahoj',5 + 5,' 3 + 3'); { vypíše na obrazovku: "ahoj 10 3+3" } writeln('ahoj',5 + 5,' 3 + 3'); { udělá to samé, ale potom přesune kurzor na další řádku } readln(s); { načte z klávesnice do proměnné s. Procedura read bez ln se nepoužívá }
Do proměnné samozřejmě můžeme přiřadit cokoli přímo v programu a to :
s:=‘ahoj‘;
a:=1;
pozn. Následující procedury vyžadují knihovnu CRT a slouží pro práci s obrazovkou v textovém režimu.
clrscr; { zkratka ClearScreen - vymaže obrazovku } textcolor(red); { nastaví barvu textu ne červenou } textbackground(blue); { nastaví barvu pozadí na modrou. Poté je nutno smazat obrazovku, pokud chtece aby byla celá modrá. } readkey; { fukce, která čeká na stisk klávesy a poté vrátí její znak; }
Příklad použití char:
uses crt; var ch : char; begin ch:=readkey; if (ch = ‘1‘) then writeln(‘Stiskl jsi jedničku‘); readkey; { ceka na stisk libovolne klavesy } end;
keypressed - fukce typu boolean; Je pravdivá, pokud byla zrovna stsknuta klávesa. Využívá se v případě, že nechceme čekat na klávesu a načíst jí jen tehdy, když je zmáčknuta.
př : if (keypressed) then ch:=readkey;
Podmínky
Deklarace podmínky : if (podmínka) then příkaz;
Pokud chceme provést více, než jeden příkaz, použijeme příkazy begin a end :
if (podmínka) then
begin
příkaz;
příkaz;
end;
Podmínkou je myšlen matematický výraz, např a > b, c = 3, jmeno = ‘karel‘, a <> b (toto je znak pro nerovnost).
Můžeme kombinovat několik podmínek pomocí operátorů AND (a zároveň), OR (nebo) a XOR (logické nebo).
if (rok = 2007) and (mesic = 11) then ...
Cykly
Využívají se, když potřebujeme udělat stejnou věc vícekrát. Buď předem víme kolikrát, nebo cyklus zastavíme, když se splní podmínka.
FOR
vyžaduje pomocnou proměnnou typu integer a používá se v případě, když známe počet opakování.
var i : integer; begin for i:=2 to 8 do write(i); { vypíše čísla od 2 do 8 } end;
(i má počáteční hodnotu 2. V každém kroku cyklu je potom v I hodnota o
jednu větší. Cyklus skončí, když je v I hodnota
for i:=8 downto 2 do write(i); { vypíše čísla od 8 do 2 (v každém kroku cyklu je v I hodnota o jednu menší) }
REPEAT
- opakuje kód mezi repeat a until, dokud se nesplní podmínka
writeln(‘zadejte cislo vetsi nez 6: ‘); repeat readln(a); if (a <= 7) then writeln(‘Cislo neni vetsi nez 6, zadejte znovu.‘); until (a > 6);
(WHILE) - to samé, jako repeat, ale s jinou deklarací. Spíše se používá repeat.
While (podmínka) do
begin
. . . { opakuje kód mezi begin a end, dokud PLATÍ podmínka }
end;