Příklady z přednášek PRM030 PRG031 paralelka Y
školní rok 2003/2004
Tato stránka obsahuje některé programy z paralelky Y přednášek
PRM030 Programování I a PRG031 Programování II konané ve školním roce 2004/5 pro studenty informatiky
1.ročníku MFF UK.
Budu se snažit, aby na ní studenti nalezli zdrojové texty
rozsáhlejších a důležitých programů probíraných na přednášce.
Většinou bude uveden pouze zdrojový text, nikoli rozsáhlejší
komentované zadání úlohy nebo diskusi různých řešení.
Primárním cílem není vytvářet učebnici, ale "pouze" odbřemenit studenty
od nutnosti na přednášce opisovat dlouhé texty. Předpokládá se tedy, že
si student přesné zadání úlohy a podrobnější diskusi o programu
zapíše na přednášce.
- Demonstrační příklad na zaokrouhlovací chyby.
- Výpočet hodnoty čísla zapsaného v poziční soustavě o obecném základě.
- Kvadratický algoritmus pro nalezení délky nejdelší rostoucí vybrané posloupnosti
(dokáže nalézt i tuto posloupnost)
- Algoritmus pro nalezení délky nejdelší rostoucí vybrané posloupnosti mající složitost N*log(N)
- Jednotka utab obsahujici typ tab reprezentujici tabulku.
- Jednotka obsahující knihovnu několika podprogramů pro hledaní v tabulce.
Jednotka užívá typ tabulky importovaý z jednotky utab.
- Program hledá M navzájem se neohrožujících se dam na
šachovnici M x M.
- Nerekursivní a rekursivní verze programu hledajícího
všechny rozklady zadaného čísla na sčítance
- Program realizující jednoduchý sekvenční algoritmus hledající reflexivní,
symetrický a transitivní uzávěr relace nad čísly z intervalu 0..M
Současně jde o příklad na zacházení s množinami.
- Realističtější verze předchozího programu.
Do vytvářené relace bere jen ty prvku, které se explicitně objevili na vstupu,
vstup a výstup do textového souboru.
- Třídící algoritmy vnitřního třídění
- Program vyhledávání v uspořádaném seznamu
s přístupem na fiktivní začátek (hlavu) a fiktivní konec (ocas).
- Hledání kořene metodou půlení intervalu - příklad použití funkcionálních parametrů
- Programová jednotka realizující streamy čísel
- Implementace algoritmu přirozeného slučování na streamech
- Pomocný program, který vytváří z textového souboru obsahujícího integery
stream se stejným obsahem.
- Zvětšování počtu běhu procezením přes dva heapy v operační paměti.
- Motivační příklad pro zavedení objektového programování
- Unita obsahující objektovou implementaci dvojsměrných lineárních seznamů s hlavou
- Programy demonstrující virtuální metody
- Trasování algoritmu batohu