Cilj ovog predmeta je sticanje opštih i specifičnih znanja iz programiranja kao i osnovnih znanja o funkcionisanju računarskog sistema i jezičkog procesora. Takođe, cilj je shvatiti pojam algoritma i programa, faza u razvoju programa, kao i različite programske paradigm, programiranje, testiranje i debagiranje u programskom jeziku C, i to kako korištenjem integrisanog razvojnog okruženja, tako i iz komandne linije. Student će biti osposobljen da razloži program u funkcionalne cjeline (potprograme) i da koristi algoritme pretraživanja i sortiranja, kao i dinamičke strukture podataka u cilju rješavanja problema.
Šifra predmeta: | Status predmeta: | Semestar: | Fond časova (P+A+L): | ECTS bodova: |
---|---|---|---|---|
RN-UPR | O | I | 3+3+0 | 7 |
Bulova algebra i binarna reprezentacija podataka. Sintaksne notacije. Strukturirano programiranje. Tipovi podataka. Kontrolne strukture. Modularizacija programa, prenos argumenata, rekurzija. Ulaz/izlaz podataka, datoteke. Pokazivači i dinamička alokacija memorije i dealokacija sa primerima (liste). Analiza složenosti algoritama. Nizovi. Pokazivači. Dinamička alokacija memorije. Funkcije: definisanje, argumenti, bočni efekti, rekurzija, prototip. Vidljivost i trajnost promenljivih. Predprocesor. Strukture i unije. Ulaz/izlaz, tekstualne i binarne datoteke. Dinamičke strukture podataka (ulančane liste, stabla). Razvoj složenih programa u jeziku C.
Nastava se izvodi u obliku predavanja, auditornih vježbi i vježbi na računaru. Učenje, testovi, domaći radovi, seminarski rad i konsultacije.
- Kolokvijum 1 (0-15 bodova);
- Kolokvijum 2 (0-15 bodova);
- Završni ispit (0-50 bodova);
- Seminar-i (0-10 bodova);
- Aktivnosti na nastavi (0-10 bodova).