Anglická verze
logolink

< Zpět na seznam lekcí

Úvod do Pascalu

AlgortimyObsah lekce:

  • O Pascalu
  • Struktura programu v jazyce Pascal
  • Proměnná a její datový typ
  • Přiřazení hodnoty do proměnné
  • Vstup a výstup
  • Příklad jednoduchého výpočtu matematického vzorce

O Pascalu

Programovací jazyk Pascal vytvořil Niklaus Wirth na Vysoké škole technické v Curychu v roce 1971. Pascal rychle získal dominantní postavení při výuce programování a využívá se i v praxi v programování například ve vývojovém prostředí Delphi.

Struktura programu v jazyce Pascal

Každý program v jazyku Pascalu se skládá ze tří části:

  • hlavička programu
  • deklarační část, kde se definují například identifikátory (proměnné), které se v programu požívají
  • příkazová část, která obsahuje postup samotného výpočetního procesu

Ukažme si jednoduchý příklad:

Ukázka programu zapsaného v programovacím jazyce Pascal
Hlavička programu
 Program SectiDveCisla;
Deklarační část
 var a,b:integer;
Příkazová část
 begin
  readln(a);
  readln(b);
  writeln(a+b);
 end.

Na tomto příkladu si můžeme všimnout několika základních věcí:

  • program začíná tzv. klíčovým slovem program a libovolným názvem prgramu
  • deklarační část může obsahovat i další příkazy, ale v tomto příkladu obsahuje příkaz var, za kterým následuje seznam proměnných a jejich datových typů (vysvětlíme si níže)
  • příkazová část začíná příkazem begin a končí příkazem end. - mezi tyto dva příkazy se píší jednotlivé příkazy (kroky) programu
  • řádky programu jsou zakončeny středníkem (není to ale pravidlem, jak můžeme vidět například na řádku s příkazem begin)

Takže obecně vzato má program následující strukturu:

Ukázka programu zapsaného v programovacím jazyce Pascal
Hlavička programu
 Program Název_programu;
Deklarační část
 uses knihovna_1;...knihovna_n; (nepovinný řádek)
 type definovaný_datový_typ_1;...definovaný_datový_typ_n; (nepovinný řádek)
 const konstanta_1=hodnota;...konstanta_n=hodnota; (nepovinný řádek)
 procedure procedury programu; (nepovinný řádek)
 var proměnná_1:datový_typ;
     proměnná_2:datový_typ;
     ...
     proměnná_n:datový_typ;
Příkazová část
 begin
  příkaz_1;
  příkaz_2;
  ...
  příkaz_m;
 end.

Proměnná a její datový typ

Abychom mohli v programu uchovat nějakou hodnotu (například nějaké číslo x, které bude rovno třeba pěti), tak potřebujeme tzv. deklarovat proměnnou nějakého datového typu. Například v matematice často používáte zápis typu x=5. Tento zápis znamená, že x se rovná číslu 5. Chceme-li mít v programu možnost takové x vytvořit a uchovat v něm nějakou hodnotu, pak musíme x deklarovat neboli zapsat za příkaz var.

Z matematického zápisu x=5 také vidíme, že x může nabývat nějaké číselné hodnoty (v tomto případě přirozeného resp. celého čísla 5). Počítači musíme tedy také sdělit nejen to, jak se proměnná jmenuje, ale také to, jakých hodnot může nabývat (neboli jakého je datového typu = jaký typ dat v ní může být obsažen - tzn. zjednodušeně zda v ní budou čísla, znaky, písmena,...). Pro náš případ to zařídíme zápisem x:integer; - ten znamená, že v proměnné x může být uchováno téměř libovolné celé číslo.

Chceme-li mít v programu proměnnou x, která bude celočíselného datového typu, pak ji deklarujeme zápisem :

Deklarace proměnné x v programovacím jazyce Pascal
 Program Deklarace_proměnné_x;
 var x:integer;
 begin
 end.

V programu můžeme deklarovat v podstatě libovolné množství proměnných (omezeni jsme pouze pamětí počítače). Pokud máme více proměnných stejného typu, pak je můžeme oddělit čárkami a nemusíme je psát pod sebe:

Deklarace proměnných x,y,a,b v programovacím jazyce Pascal
 Program Deklarace_proměnných_x_y_a_b;
 var x,y:integer;
     a:integer;
     b:integer;
 begin
 end.

Všimněte si, že klíčové slovo var je v programu uvedenou POUZE jednou jako začátek bloku deklarací proměnných.

Přiřazení hodnoty do proměnné

Pokud máme proměnnou deklarovanou, pak ji můžeme začít v programu používat. Pomocí operátoru přiřazení := do ní vložíme hodnotu takto:

Přiřazení čísla 7 do proměnné x v programovacím jazyce Pascal
 x:=7;

Vstup a výstup

Vstup

Vstupem rozumíme data, která vstupují do programu (zpravidla jako hodnoty nějakých proměnných). K zadání vstupu do programu použijeme funkci read, resp. readln. Pokud použijeme funkci readln bez parametrů, pak pouze čeká na stisk klávesy enter. Pokud zadáme parametr (proměnnou), pak funkce také čeká na stisk klávesy enter a po stisku uloží vše, co jste napsali do proměnné, která je jejím parametrem.

Naplnění proměnné x v programovacím jazyce Pascal
 Program Zadani_a_vypis_x;
 var x:integer;
 begin
 readln(x);
 readln;
 end.

Výstup

Výstupem programu rozumíme informace, které nám program poskytne. Jedná se tedy o oznámení výsledku výpočtu nebo prostě jen o nějaké textové sdělení. Výstup nám bude vypisovat na obrazovku. Abychom na obrazovku něco vypsali, tak použijeme funkci write, resp. writeln. Rozdíl je v tom, že funkce write vypíše zadaný řetězec (parametr) na obrazovku na pozici kurzoru a ten zůstane v místě, kde vypisovaný řetězec skončil a writeln po vypsání požadovaného řetězce skočí na nový řádek. Vypisovaný text musíme uzavřít do apostrofů.

Výpis textu Ahoj na obrazovku v programovacím jazyce Pascal
 writeln('Ahoj');

Chceme-li vypsat hodnotu nějaké proměnné, pak ji zadáme jako parametr příkazu namísto řetězce znaků a bez apostrofů. Následující program napíše na obrazovku číslo 7.

Výpis proměnné x v programovacím jazyce Pascal
 Program Vypis_x;
 var x:integer;
 begin
 x:=7;
 writeln(x);
 end.

Výpis textu a proměnných lze kombinovat tak, že proměnné od textu oddělujeme čárkou.

Výpis proměnné x a textu v programovacím jazyce Pascal
 Program Vypis_x;
 var x:integer;
 begin
 x:=7;
 writeln('Proměnná x má hodnotu',x);
nebo i s tečkou za větou
 writeln('Proměnná x má hodnotu',x,'.');
nebo varianta když je hodnota jako prvni
 writeln(x,' je hodnota proměnné x.');
 end.

Náš ilustrační program pro vstup hodnoty proměnné x bychom měli vylepšit tak, aby uživatel věděl, co má dělat a informovat ho o výsledku.

Vstup a výstup v programovacím jazyce Pascal
 Program Zadani_a_vypis_x;
 var x:integer;
 begin
 writeln('Zadejte prosim hodnotu x:');
 readln(x);
 writeln('Proměnná x má hodnotu',x,'.');
 readln;
 end.

Příklad jednoduchého výpočtu matematického vzorce

Jak jsme viděli, tak jsme schopni napsat program, který uživateli sečte libovolná dvě zadaná čísla. Chtěli bychom ale také, aby za nás počítač uměl řešit náročnější matematické výrazy a vzorce. Především potřebujeme další běžně používané početní operace:

  • + sčítání
  • - odčítání
  • * násobení
  • / dělení

Příklad: Vypočtěte objem a povrch krychle.

Objem a povrch krychle v programovacím jazyce Pascal
 Program Objem_a_povrch_krychle;
 var a:integer;
 begin
 writeln('Zadejte prosím velikost strany krychle:');
 readln(a);
 writeln('Objem krychle o straně a=',a,' má hodnotu ',(a*a*a),'.');
 writeln('Povrch krychle o straně a=',a,' má hodnotu ',6*(a*a),'.');
 readln;
 end.

Domácí úkol

Napište program pro výpočet obsahu a objemu kvádru.

Otázky

  1. Jaké jsou hlavní části programu v jazyce Pascal?
  2. Jak lze definovat novou proměnnou?
  3. Jak může uživatel zadat údaje do proměnné v programu?
  4. Jak lze vypsat text do konzole?
webdesign, xhtml, css, php - Mgr. Michal Mikláš