Naziv
Programiranje
Organizacijska jedinica
Odsjek za informacijske i komunikacijske znanosti
ECTS
4
Šifra
266147
Semestri
zimski
Nastavnici
Satnica
Predavanja
30
Vježbe u praktikumu
15

Cilj
Osposobiti studente za definiranje osnovnih koncepata i temeljnih pojmova u programiranju.
Osposobiti studente za analizu i rješavanje programerskih problema primjenom programerske metodologije i prakse.
Osposobiti studente za primjenu odabranog programskog jezika te radnog okruženja.
Osposobiti studente za strukturiranje programskoga koda i izradu programa primjenom odabranog programskog jezika i usvojene programerske metodologije i prakse.
Sadržaj
  1. Uvod u kolegij. Uvod u programiranje. Programski jezici i motivacija odabira. Razvojna okruženja i alati za pripremu i razvoj programa. Instalacija i rad sa sučeljem.
  2. Problemi i načini rješavanja programerskih problema. Uvod u algoritme, pseudokod i dijagram toka. Osnovni koncepti.
  3. Komentiranje programskog koda. Varijable i inicijalizacija. Izostanak vrijednosti. Operatori i numeričke operacije. Aritmetika. Skraćeni zapis operatora. Jednostavni i složeni izrazi. Prednost operatora. Napredni operatori.
  4. Tipovi podataka i uloga. Brojevni tipovi podataka. Logički tip podataka. Istinitosna tablica i usporedba. Logika i operacije. Znakovni nizovi. Ostali tipovi podataka. Prednosti i ograničenja tipova podataka. Konverzija i usporedba tipova. Brojevni sustavi i konverzija.
  5. Pravila za kodiranje. Ulazno-izlazne funkcije. Formatirani unos i ispis. Napredno formatiranje ispisa. Interakcija računala i čovjeka. Identifikacija, analiza i ispravljanje pogrešaka.
  6. Struktura programa i upravljanje tokom. Jednostavni program. Slijed. Grananje. Ispitivanje uvjeta i donošenje odluka. Jednostavno i složeno grananje. Pravila ugnježđivanja. Specijalne naredbe.
  7. Petlje i ponavljanje blokova. Vrste, uloga, sličnosti i razlike. Jednostavne i složene petlje. Pravila ugnježđivanja. Prekid i nastavak petlje.
  8. Rad s funkcijama. Pozivanje funkcije. Implementirane funkcije. Argumenti i parametri. Vraćanje vrijednosti. Rad s metodama. Rad s modulima.
  9. Znakovni nizovi. Osnovne operacije. Napredne operacije. Implementirane funkcije. Implementirane metode. Konverzija.
  10. Elementarne strukture podataka. Složeni tipovi podataka. Zbirke podataka. Sličnosti i razlike. Pravila. Konvencije.
  11. Liste. Osnovne operacije. Napredne operacije. Obuhvaćanje i izrezivanje. Sintaktički šećer. Funkcije i metode. Konverzija.
  12. N-torke. Osnovne operacije. Napredne operacije. Pakiranje i raspakiravanje. Funkcije i metode. Konverzija.
  13. Skupovi. Osnovne operacije. Napredne operacije. Funkcije i metode. Konverzija.
  14. Rječnici. Osnovne operacije. Napredne operacije. Obuhvaćanje. Sintaktički šećer. Funkcije i metode. Konverzija.
  15. Posebnosti programskoga jezika. Upute i stilovi pisanja programskoga koda. Savjeti. Standardne i proširene biblioteke. Upravljanje paketima. Izvoz programa. Korisni alati i paketi.

Ishodi učenja
  1. Definira temeljne pojmove i argumentirati osnovne koncepte u programiranju.
  2. Primjenjuje programersku metodologiju i prakse u postupku rješavanja programerskih problema.
  3. Planira potrebne resurse, alate i okruženja za rješavanje programerskih problema.
  4. Osmišljava strukturu programa.
  5. Izrađuje programe u odabranom programskom jeziku.
Metode podučavanja
Predavanja i vježbe na računalima koje kroz praktične primjere prate predavanja.
Metode ocjenjivanja
Pisani i usmeni ispit.

Obavezna literatura
  1. Programiranje: udžbenik. Ivan Dunđer. 2020.
  2. Bilješke s predavanja i radni materijali.
  3. Službena dokumentacija odabranog programskog jezika.
Dopunska literatura
  1. Python for Everybody: Exploring Data in Python 3. Charles Severance. CreateSpace Independent Publishing Platform, 2016.
  2. Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming. Eric Matthes. No Starch Press, 2023.
  3. Starting Out with Python. Tony Gaddis. Pearson, 2017.

Izborni predmet na studijima
Novi i reformirani studiji
  1. Informacijske znanosti, sveučilišni prijediplomski jednopredmetni studij, 1. semestar