Hodina 7., 8. (10.10. 2005)

Zde naleznete základní pojmy, bez kterých se programátor neobejde.

Programování - základní pojmy:

Znak - písmena (A..Z, a..z), čísla (0..9), speciální znaky = zvláštní symboly (+,-,*,/,=,<>,<,>,<=,>=,(,),[,],{,},:=, . , , , ; , : , .. ,',(*,*),@,$,#,&) , vyhrazená slova
Vyhrazená slova = klíčová - taková, která mají své zvláštní použití a nemůžeme jim přiřadit jiný význam
Direktivy - podobně specifická slova jako "Klíčová", také je nesmíme používat jiným způsobem
Proměnná - úsek paměti, kam se ukládají čísla definující znaky; mění se v průběhu výpočtů
Konstanta - úsek paměti, kam se ukládají čísla definující znaky; zůstává stále stejná
Identifikátor - označení/název konstant a proměnných; nesmí začínat číslicí a nesmí obsahovat speciální znaky a neměl by ani diakritiku, nesmí být shodný s vyhrazeným slovem či direktivou

Každá proměnná musí mít určenu množinu přípustných hodnot a množinu operací. Popis těchto dvou hodnot souhrně nazýváme datový typ. Proměnná, která má přiřazen datový typ, nabývá vždy jen hodnot tohoto svého typu a žádných jiných a lze na ní provádět jen přípustné operace.

Datové typy

  1. Jednoduché datové typy
    1. Ordinální - hodnoty jsou uspořádány od nejmenší po největší, počet hodnot je tedy znám
      1. typy celých čísel - byte, word, shortint, integer, longint
      2. typy logických hodnot - boolean (true, false)
      3. znak - char
      4. výčet
      5. interval
    2. Neordinální - nejsou zobrazitelné na množině celých čísel
      1. racionální čísla - real, single, double, extended, comp
  2. Strukturované datové typy
    1. pole - array [a..b] of ...
    2. záznam - record
    3. množina - set of ...
    4. řetězec - string
    5. soubor - file of ...
  3. Typ ukazatel
  4. Typ podprogram
  5. Typ objekt

Deklarace konstant, datových typů a proměnných:

const konstanta1 = 5; (* Deklarace konstanty; - Takhle je možno psát poznámky/komentáře k programu *)
      pocetMesicu = 12;
      pocetDnuTydne = 7;
      nadpis = 'Ovoce a zelenina';
      podpis = 'Kymličková';

type cislaMesicu = 1..12; { Deklarace datového typu; - Nebo lze komentáře zapisovat takto }
     dnyTydne = (Pondeli, Utery, Streda, Ctvrtek, Patek, Sobota, Nedele);
     podil = real;

var mesic : cislaMesicu; { Deklarace proměnné }
    dnesniDen : dnyTydne;

Příklad 1:

var p:integer;          (* Deklarace proměnné typu integer; - Takhle je možno psát poznámky/komentáře k programu *)
begin                   { začátek programu }
  write ('pokus');      { vypsání slova pokus }
  read (p);             { načtení číselné hodnoty z klávesnice pro pozdržení výstupu na obrazovce }
end.                    { konec programu }

Struktura programu v jazyce Pascal

  program identifikátor;           {hlavička}
  uses seznam knihovních modulů;   {začátek deklarací}
  label deklarace návěští;
  const definice konstant;
  type definice datových typů;
  var deklarace proměnných;
  deklarace procedur a funkcí;     {konec deklarací}
  begin                            {začátek příkazové části}
  end.                             {konec příkazové části}

Příklad 2:

var p:integer;          (* Deklarace proměnné typu integer; - Takhle je možno psát poznámky/komentáře k programu *)
begin                   { začátek programu }
  write ('********');   { vypsání osmi hvězdiček }
  write ('* TEST *');   { vypsání slova test se dvěma hvězdičkami }
  write ('********');   { vypsání osmi hvězdiček }
  read (p);             { načtení číselné hodnoty z klávesnice }
end.                    { konec programu }

Domácí úkol:

Spřátelit se s pascalem. Naučit se kompilovat (Compile -> Compile = Alt + F9 ) a spouštět (Run -> Run = Ctrl + F9 ) programy.

Příklady na procvičení:

  1. Máte v jednom hrníčku olej, ve druhém mléko, potřebujete aby to bylo obráceně, jak to uděláte aniž by bylo cokoli vylito? Popište postup.
  2. Viz minulý příklad, ale teď vytvořte vývojový diagram pro výměnu obsahů dvou proměnných.
  3. Vytvořte vývojový diagram pro výpočet obvodu čtverce.
  4. Vytvořte vývojový diagram pro převod jednotek např. m->mm, km/h->m/s, h->s, l->dm3,...
  5. Vytvořte vývojový diagram pro zjištění lichosti, sudosti u libovolného čísla.
  6. Vytvořte vývojový diagram pro výpočet kořenů kvadratické rovnice.
  7. Vytvořte vývojový diagram pro převod libovolného čísla desítkové soustavy na dvojkovou.
  8. Vytvořte vývojový diagram pro zjištění které ze dvou čísel je větší.
Zpět