Pogoji za vključitev v delo oz. za opravljanje študijskih obveznosti
|
|
Ni pogojev. |
Vsebina
|
|
Uvod: osnovna sintaksa in semantika visoko nivojskega programskega jezika, algoritem, von Neumannov računalnik, spremenljivka, prirejanje, enostavni primeri programov.
Tipi in izrazi: osnovni podatkovni tipi, izrazi in operatorji.
Krmilne strukture: pogojne in iterativne krmilne strukture, strukturna dekompozicija.
Funkcije: podprogram, prenos parametrov po vrednosti, prenos parametrov po referenci, prekrivanje funkcij.
Algoritmi in reševanje nalog: strategije reševanja nalog, vloga algoritmov pri reševanju nalog, koncepti in lastnosti algoritmov.
Načrtovanje programov: psevdokod, strategije implementacij algoritma, funkcije, testiranje, razhroščevanje.
Polja: algoritmi iskanja, urejanje polj, prenos polj v funkcijo.
Strukture in kazalci, uporabniško definirane podatkovne strukture, predstavitev podatkov v pomnilniku, nizi in delo z nizi.
Kazalci in reference: kazalec na strukturo, referenca, upravljanje s pomnilnikom v času izvajanja programa.
Dinamična podatkovna struktura, seznam.
Rekurzija: rekurzivne matematične funkcije, implementacija rekurzije, algoritmi, dinamične podatkovne strukture, drevo. |
Temeljni literatura in viri
|
|
• V. Žumer, J. Brest: Strukturirano programiranje v C++, 2. izdaja, Univerza v Mariboru, Fakulteta za elektrotehniko, računalništvo in informatiko, Inštitut za računalništvo, Maribor, 2002.
• S. Prata: C++ Primer Plus, Sixth Edition, Addison Wesley Professional, Indianapolis, 2011.
• S. Sahni: Data Strutures, Algorithms, and Applications in C++, Second Edition, Silicon Press, Summit, NJ, 2005.
• P. J. Deitel, H. M. Deitel: C++ How to Program, Ninth Edition, Prentice Hall, New Jersey, 2013.
|
Cilji in kompetence
|
|
Cilj predmeta je naučiti študente algoritmičnega razmišljanja in strukturiranega programiranja. |
Predvideni študijski rezultati - znanje in razumevanje
|
|
Po zaključku tega predmeta bo študent sposoben
izkazati znanje in razumevanje strukturiranega programiranja,
izkazati znanje in razumevanje sintakse programskega jezika C++,
izkazati razumevanje osnovnih pristopov pri analizi, načrtovanju, kodiranju in testiranju računalniških programov,
načrtovati algoritme za reševanje preprostih nalog,
izkazati znanje in razumevanje osnovnih algoritmov in podatkovnih struktur.
|
Predvideni študijski rezultati - Prenosljive/ključne spretnosti in drugi atributi
|
|
Spretnosti komuniciranja: ustni zagovor laboratorijskih vaj, pisno izražanje pri pisnem izpitu, ustno izražanje pri ustnem izpitu.
Uporaba informacijske tehnologije: uporaba programskih orodij za programiranje.
Reševanje nalog: načrtovanje, kodiranje, testiranje programov. |
Metode poučevanja in učenja
|
|
• predavanja,
• seminarske vaje,
• laboratorijske vaje,
• kvizi.
|