Zpět PRM044

Příklady z přednášek PRM044 a PRM045

školní rok 2006/2007

Tato stránka obsahuje některé programy z přednášky PRM044 Programování I konané ve školním roce 2006/7 pro studenty 1.ročníku matematiky na 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 diskuse 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.

Soubory jsou ke stažení jako textové s příponou txt, aby se Vám neotvírali Delphi. Bude-li je chtít použít v Borland Pascalu, můžete příponu změnit na pas

Zimní semestr - PRM0044

  1. Trasování Ariadnina algoritmu na konkrétním bludišti
  2. Demonstrační příklad na zaokrouhlovací chyby.
  3. Demonstační programy pro použití konstanty.
    Úkolem je spočíst průměr posloupnosti kladných čísel ukončené nulou. Verze bez konstanty a verze s konstantou.
  4. Výpočet hodnoty čísla zapsaného v poziční soustavě o obecném základě.
  5. Kvadratický algoritmus pro nejdelší rostoucí vybrané posloupnosti
  6. Algoritmus pro nalezení délky nejdelší rostoucí vybrané posloupnosti mající složitost N*log(N)
  7. Algoritmus počítání n-té mocniny pomocí maximálně 2*ln2(n) násobení
  8. Ukázkový program demonstrující formátovaný výstup číselných hodnot a jeho výstup
  9. Pascalův trojúhelník
  10. Jednotka utab obsahujici typ tab reprezentujici tabulku.
  11. Jednotka obsahující knihovnu několika podprogramů pro hledaní v tabulce.
    Jednotka užívá typ tabulky importovaý z jednotky utab.
  12. Program hledá M navzájem se neohrožujících se dam na šachovnici M x M.
  13. Nerekursivní a rekursivní verze programu hledajícího všechny rozklady zadaného čísla na sčítance
  14. Animace rekursivních algoritmů
  15. 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.
  16. Realističtější verze předchozího programu. Do vytvářené relace bere jen ty prvky, které se explicitně objevily na vstupu, vstup a výstup do textového souboru.
  17. Třídící algoritmy vnitřního třídění
  18. Animace průchodů grafem
  19. Hledání kořene metodou půlení intervalu - příklad použití funkcionálních parametrů
Zpět PRM044
Zpět PRM045

Letní semestr - PRM045

  1. Animace práce se spojovými seznamy
    1. spojový seznam
    2. přidání prvku na začátek spojového seznamu
    3. odebrání prvku ze začátku spojového seznamu
    4. průchod spojovým seznamem
    5. přidání prvku na konec spojového seznamu
    6. odebrání prvku z konce spojového seznamu
  2. Program vyhledávání v uspořádaném seznamu s přístupem na fiktivní začátek (hlavu) a fiktivní konec (ocas).
  3. animace průchodů binárním stromem reprezentujícím aritmetický výraz
    1. inorder
    2. preorder
    3. postorder
  4. animace oprací s binárními vyhledávacími stromy
    1. vyhledávání prvku ve stromě
    2. vkládání prvku do stromu
    3. vypouštění prvku z binárního vyhledávacího stromu
  5. Vnější třídění
  6. Motivační příklad pro zavedení objektového programování
  7. Unita obsahující objektovou implementaci dvojsměrných lineárních seznamů s hlavou
  8. Programy demonstrující virtuální metody, jednoduchá objektová hierarchie tříd zvire, pes a kocka
  9. Ukazka hierarchie geometrických obrazců
  10. Hledání optimálního složení batohu - úloha s celočíselnými koeficienty
  11. Trasování algoritmu nalezení nejdejšího společného podřetězce
Zpět PRM045