Eratosthenovo síto
Na cvičení jsme se zabývali implementací známého algoritmu na hledání prvočísel. Zdrojový kód byl podrobně rozebrán. Nebyla v něm ovšem chyba, která je tady. Můžete si ji z cvičných důvodů zkusit najít například pomocí ladících prostředků představených níže.
Umíte program pozměnit tak, aby jste vypsali pouze prvočísla obsahující cifru 8?
Pět věcí k Pascalu
Na ukázkových zdrojových kódech bylo předvedeno několik pravd souvisejících s programováním v Pascalu. Pokud byl výklad příliš zmatený, zkuste experimentovat.
- 1. Je možné definovat uživatelské typy - definice se uvozuje klíčovým slovem type. Nadefinované typy lze poté v programu používat stejným způsobem jako typy základní (např. integer, real, char,..).
- 2. Program je vždy vykonáván postupně po řádcích zeshora dolů. Toto jednoduché pravidlo ovlivňují pouze klíčová slova řídící běh programu (for,while,repeat,if,case) a případné procedury nebo funkce, které lze chápat jako pojmenované kusy kódu popsané zvlášť.
- 3. Existují globální proměnné (jsou "vidět" všude) a lokální proměnné (jsou "vidět" jen tam kde byly definovány). Globální proměnné se definují v sekci var na začátku programu. Ty lokální se definují v sekci var na začátku procedury nebo funkce. Parametry procedur/funkcí je možné chápat jako lokální proměnné procedur/funkcí.
- 4. Parametry lze do funkcí/procedur předávat hodnotou, nebo odkazem. Rozdíl je v tom, že při předávání hodnotou nemá provedení procedury/funkce vliv na obsah proměnné. Proměnná předávaná odkazem se uvozuje klíčovým slovem var. Přesvědčte se na vlastní oči.
- 5. Programy můžou obsahovat chyby. K jejich nalezení můžeme použít breakpointy a watche. Na cvičení jsme si ukázali jak se breakpointy a watche vytvoří a jak se trasuje program.
Domácí úkol
V CodExu byly zadány 3 jednoduché úlohy: Dobrá čísla, Goldbachova kratochvíle, Josefův problém. Každá z nich je za 6 bodů.