Cilj predmeta

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

Ishodi učenja (stečena znanja)

Sadržaj predmeta

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.

Metode nastave i savladavanje gradiva

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.

Oblici provjere znanja i ocjenjivanje

  • 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).