Predmet: Programovanie a algoritmy

Školský rok: 2001/2002

Forma: Prednáška, cvičenie, praktikum

Odbor - špecializácia, ročník: Matematika, 1. ročník, Informatika, 1. ročník, Učiteľské štúdium v kombinácii s Informatikou

Rozsah: Prednáška / cvičenie / praktikum -- Zimný semester - 4/2/2 s z z K predmetu je priradené Praktikum z programovania v rozsahu 0/2, ktoré sa koná v počítačovej učebni.

Výučbu zabezpečujú: KMI Doc. RNDr. G. Andrejková, CSc., Mgr. Ľ. Šimkaninová, RNDr. R. Lencses, RNDr. S. Krajči, CSc., Mgr. M. Mojžiš

Obsah predmetu v ZS (spolu s časovým rozvrhom):

Týždeň:

  1. Algoritmický problém a jeho riešenie. Príklady konkrétnych algoritmov (jednoduché cykly), zápis algoritmu v dohodnutom formalizme. Správnosť algoritmov, ladiace tabuľky pre testovanie algoritmov. Vlastnosti programovacích jazykov vyššieho typu.
  2. Zložitejšie algoritmy - vnorené cykly. Základné údajové a príkazové štruktúry jazyka PASCAL. Syntaktické diagramy jazyka PASCAL. Programové prostredie Turbo Pascalu. Dátový typ súbor a práca so súbormi. Príkazy vstupu a výstupu. Ladiace údaje v súboroch.
  3. Ďalšie údajové štruktúry. Údajový typ pole, typ reťazec, typ množina, typ interval, typ vymenovaním. Algoritmy pre prácu s reťazcami.
  4. Algoritmický problém triedenia , základné a zložitejšie algoritmy, zložitosť.
  5. Podprogramy, procedúry, funkcie. Rekurzia. Unity.
  6. Dátový typ záznam a jeho použitie. Grafika v Turbo Pascale 6.0.
  7. Metóda s návratom (backtracking) - rekurzívna a nerekurzívna verzia. Problém 8 dám. Problémy jazdca na šachovnici.
  8. Dynamické dátové štruktúry, typ smerník, programátorské prostriedky pre prácu s dynamickými dát. štruktúrami. Lineárne spojové zoznamy. Ovládanie voľnej pamäti.
  9. Dôležité údajové štruktúry - zásobník, rad, graf, tabuľky.
  10. Štruktúry na uloženie grafov. Prehľadávanie grafu do hĺbky a do šírky, prechod stromom a grafom. Práca s grafmi. Komponenty súvislosti grafu.
  11. Reprezentácia stromov a grafov pomocou dynamických údajových štruktúr. Topologické triedenie.
  12. Ďalšie algoritmy na grafoch. Minimálna kostra grafu. Hľadanie najkratšej cesty.

Cvičenia: Cvičenia budú orientované na riešenie úloh (analýza, algoritmus, program).

Odporúčaná študijná literatúra:

  1. J. Jinoch a kol.: Programovací jazyk PASCAL, SNTL, Praha, 1985
  2. N. Wirth: Algorithms+Data Structures=Programs, Prentice-Hall, 1976, ex. slovenský preklad v roku 1987
  3. P. Spišiak: Programovací jazyk Turbo Pascal 5.0, Skriptum PF UPJŠ, Košice, 1991
  4. G. Andrejková, M. Kucka: Zbierka úloh z programovania, Skriptum PF UPJŠ, Košice, 1991.
  5. S. Dvořák: Dekompozice a rekursivní algoritmy, Grada, a.s., Praha, 1992.
  6. P. Toepfer: Algoritmy a programovací techniky, Prometheus, Praha, 1995.
  7. M. Kvoch: Programování v Turbo Pascalu 6.0, Nakladatelství KOPP, české Budějovice, 1992
  8. P. Satrapa: Začíname v PASCALU. Neokortex spol. s r. o., Praha, 1998.
  9. Firemná literatúra pre programovací jazyk Turbo Pascal 6.0. Borland 1990, (Programmer's Guide, User's Guide).

Testy: 4., 7., 10., 13. týždeň na prednáškach

Skúška: Teoretická a praktická časť.

  1. Kto získa 75% bodov, nemusí robiť teoretickú časť – hodnotenie teoretickej časti rovnomerne rozdelené. Teoretickú časť robia všetci (aj C - čkári) v Pascale.
  2. Praktickú časť bude robiť každý. C - čkári môžu robiť programy v jazyku C. Praktická časť bude odpustená tým, ktorí sa zúčastnia školského kola ACM súťaže a vyriešia v danom čase 2 príklady.