Novinky

Konzultační hodiny

Rozvrh

Osnova

  • Programy jako transformátory predikátů. Nejslabší vstupní podmínka (wp), vlastnosti transformátorů, správnost algoritmu.
  • Programovací jazyk GCL. Syntaxe, definice sémantiky pomocí transformátorů predikátů, SKIP, ABORT, vícenásobné přiřazení, sekvence, alternativa, cyklus.
  • Programátorská logika. Zákon sekvence, zákon alternativy, zákon cyklu, vektorové proměnné.
  • Návrh algoritmů. Principy a strategie pro návrh založené na programátorské logice, zákon současného návrhu a verifikace.
  • Příklady aplikace metodologie na návrh konkrétních algoritmů. Návrh efektivních algoritmů, vyhledávání a třídění.

Požadavky na absolvování předmětu

Předmět je zakončen písemnou zkouškou. Použití literatury a poznámek není při písemce povoleno. Znalosti a dovednosti, které je potřeba zvládnout, jsou uvedeny v katalogu předmětů. Za písemku je možné získat 20 bodů, k absolvování předmětu zkouškou stačí zpravidla polovina. Každá písemka je ovšem jinak obtížná, proto nelze uvést generickou hodnotu. U každé písemky je vždy uveden konkrétní počet bodů pro jednotlivá hodnocení.

Doporučená literatura

  1. Dijkstra, Edsger W. - Feijen, W. H. J. A method of programming. Wokingham : Addison-Wesley Publishing Company, 1998.
  2. Kaldewaij, A. (Anne). Programming : the derivation of algorithms. New York : Prentice Hall, 1990.
  3. Gries, David. The Science of Programming . New York : Springer-Verlag, 1981.

Doporučené učební pomůcky (PP)

Předmět je pro větší pedagogickou názornost doplněn o výuku pomocí speciální učební pomůcky, kterou je deduktívní hra pro jednoho hráče NSD - najväčší spoločný deliteľ. Tuto hru jsem obdržel jako sponzorský dar od nadnárodního koncernu Martin Ukrop, Ltd.. Jedná se o limitovanou neprodejnou sérii. Tímto bych velice rád poděkoval tvůrcům hry za podnětný a unikátní počin.