Úvod 13 // Oddíl první // PROGRAMOVÁNÍ V JAZYKU PASCAL // 1 Řešení úloh na počítači 17 // 1.1 Co je to počítač 17 // 1.2 Jak počítač pracuje 20 // 1.3 Úloha a algoritmus řešení úlohy 21 // 1.3.1 Obecnost úlohy 22 // 1.3.2 Algoritmus řešení úlohy 23 // 1.4 Programovací jazyk a program 24 // 1.4.1 Interprety a kompilátory programovacího jazyka 25 // 1.4.2 Úrovně programovacích jazyků 25 // 1.5 Algoritmizace úloh řešených na počítači 27 // 1.6 Základní programové vybavení počítače 29 // 1.7 Základní struktura programu v jazyku Pascal 30 // 2 Základní nástroje jazyka Pascal 33 // 2.1 Práce s numerickými údaji 34 // 2.1.1 Konstanty v programu 34 // 2.1.2 Proměnné v programu 35 // 2.1.3 Struktura programu a realizace programu 38 // 2.1.4 Alternativní postupy v programu a podmínky jejich výběru . 40 // 2.1.5 Opakování postupu v programu 46 // 2.1.6 Shrnutí základních poznatků 48 // 2.2 Práce s logickými údaji 51 // 2.3 Práce se znakovými údaji 52 // 2.4 Jednoduché datové objekty, jejich typy a možné operace 54 // 2.4.1 Typy jednoduchých datových objektů 55 // 2.4.2 Typ interval 55 // 2.4.3 Operace s hodnotami jednoduchých typů 56 // 2.4.3.1 Operátory pro operace s objekty jednoduchých typů 57 // 2.4.3.2 Standardní funkce pro argumenty jednoduchých typů 59 // 2.4.4 Aritmetické a logické výrazy 62 // 2.4.4.1 Aritmetické výrazy 63 // 2.4.4.2 Logické výrazy 65 // Pole a práce s polem // Princip práce s prvky pole // Deklarace pole v programu // Řetězec znaků // Práce s polem jako celkem // Vícerozměrná pole // Podprogramy a jejich použití // Co je podprogram а k čemu slouží // Procedury a funkce, jejich deklarace a aktivace // Parametry podprogramů // Parametry volané hodnotou // Parametry volané odkazem // Ilustrace návrhu parametrů podprogramu //
Parametry konformního pole // Funkcionální parametry // Procedurální parametry // Rekurzívní podprogramy // Předsunuté deklarace podprogramu // Bloková struktura programu // Záznam a práce se záznamem // Co je to záznam // Princip práce se záznamem // Záznamy v záznamech // Příkaz with // Záznamy s variantní částí // Soubor a práce se souborem // Co je to soubor // Režimy práce se soubory // Mechanismus práce se souborem v režimu čtení // Mechanismus práce se souborem v režimu zápisu // Typy souborů // Textové soubory // Nástroje pro práci s textovými soubory // Zobecněná procedura read pro textové soubory // Zobecněná procedura write pro textové soubory // Procedury readln a writeln // Funkce eoln a procedura page // Standardní textové soubory input a output // Vnější a vnitřní soubory 7 Ordinální typy, výčty, intervaly, množiny 143 // 7.1 Ordinální typy 143 // 7.1.1 Ordinální čísla typu mřeger 143 // 7.1.2 Ordinální čísla typu char a funkce chr 143 // 7.1.3 Ordinální čísla typu feoo/eon 146 // 7.1.4 Funkce suce a 146 // 7.2 Výčty 147 // 7.3 Intervaly 149 // 7.4 Množiny 150 // 7.4.1 Množinové operace 151 // 7.4.2 Konstruktory množin 154 // 8 Dynamické proměnné 157 // 8.1 Typ ukazatel, procedury new a dispose 157 // 8.2 Operace s hodnotami typu ukazatel 159 // 8.3 Práce se složitými dynamickými strukturami 162 // 8.4 Ještě o příkazech new a ífopose 167 // 9 Příklady řešených úloh 169 // 9.1 Stolní tenis 169 // 9.2 Šachový jezdec 172 // 9.3 Zápalky 177 // 9.4 Graf 180 // Oddíl druhý // DEFINICE JAZYKA PASCAL // 1 Syntax jazyka Pascal 189 // 2 Základní elementy jazyka Pascal 192 // 2.1 Základní symboly 192 // 2.1.1 Písmena a číslice 192 // 2.1.2 Speciální symboly 192 // 2.2 Identifikátory 193 // 2.3 Čísla 193 // 2.4 Návěští 194 // 2.5 Řetězce znaků 194 //
2.6 Direktivy 194 // 2.7 Lexikální alternativy 195 // 2.8 Oddělovače lexikálních elementů 195 // 9 3 Program 196 // 3.1 Blok 196 // 3.1.1 Deklarace návěští 197 // 3.1.2 Deklarace konstant 197 // 3.1.3 Deklarace typů 198 // 3.1.3.1 Jednoduché typy 198 // 3.1.3.2 Ordinální typy 199 // 3.1.4 Strukturované typy 200 // 3.1.4.1 Typ pole 200 // 3.1.4.2 Typ záznam 201 // 3.1.4.3 Typ množina 202 // 3.1.4.4 Typ soubor 202 // 3.1.5 Typ ukazatel 203 // 3.1.6 Kompatibilita typů 203 // 3.1.7 Deklarace proměnných 204 // 3.1.8 Přístup k proměnné 205 // 3.1.8.1 Přístup ke komponentě pole 206 // 3.1.8.2 Přístup ke komponentě záznamu 206 // 3.1.8.3 Přístupová proměnná souboru 206 // 3.1.8.4 Přístup k proměnné typu množina 207 // 3.1.8.5 Přístup k dynamické proměnné 207 // 3.2 Deklarace podprogramů 207 // 3.2.1 Deklarace procedur 207 // 3.2.2 Deklarace funkcí 208 // 3.2.3 Formální parametry procedur a funkcí 209 // 3.2.3.1 Parametry volané hodnotou a odkazem 209 // 3.2.3.2 Procedurální a funkcionální parametry 209 // 3.2.3.3 Parametry konformního pole 210 // 3.2.3.4 Kongruence seznamů parametrů 211 // 3.3 Výrazy 212 // 3.3.1 Operátory 213 // 3.3.2 Zápis funkce 213 // 3.4 Příkazy 214 // 3.4.1 Jednoduché příkazy 214 // 3.4.1.1 Prázdný příkaz 214 // 3.4.1.2 Přiřazovací příkaz 214 // 3.4.1.3 Příkaz procedury 215 // 3.4.1.4 Příkaz skoku 215 // 3.4.2 Strukturované příkazy 215 // 3.4.2.1 Složený příkaz 215 // 3.4.2.2 Podmíněný příkaz 216 // 3.4.2.2.1 Příkaz if 216 // 3.4.2.2.2 Příkaz case 216 // 3.4.2.3 Příkaz cyklu 217 // 3.4.2.3.1 Příkaz repeat 217 // 3.4.2.3.2 Příkaz while 217 // 3.4.2.3.3 Příkaz for 218 // 3.4.2.4 Příkaz with 218 // Přílohy // A. Standardní objekty jazyka Pascal 220 // B. Klíčová slova jazyka Pascal 220 // C. Kód ASCII 221 // Literatura 223