Sadržaj se učitava...
mdi-home Početna mdi-account-multiple Djelatnici mdi-script Studiji mdi-layers Katedre mdi-calendar-clock Raspored sati FOI Nastava search apps mdi-login
Programiranje 1
Computer Programming 1
2025/2026
6 ECTSa
Informacijski i poslovni sustavi 1.2 (IPS)
Katedra za teorijske i primijenjene osnove informacijskih znanosti
ZP
1. semestar
Osnovne informacijemdi-information-variant Izvođači nastavemdi-account-group Nastavni plan i programmdi-clipboard-text-outline Model praćenjamdi-human-male-board Ispitni rokovimdi-clipboard-check-outline Rasporedmdi-calendar-clock Konzultacijemdi-account-voice
Izvođenje kolegija
Studij Studijski program Semestar Obavezan
Informacijski i poslovni sustavi 1.2 (IPS) 1 obavezan
Cilj kolegija
Razviti kod studenata algoritamski način razmišljanja i rješavanja problema, prenijeti studentima osnovna znanja i vještine iz programiranja u izabranom programskom jeziku i osposobiti ih za praćenje sadržaja vezanih za programiranje u imperativnom programskom jeziku tijekom nastavka studija.
Preduvjeti
Kolegij nema definirane preduvjete
Norma kolegija
Predavanja
30 sati
Vježbe u praktikumu
30 sati
Nastavnik Uloga na kolegiju Oblik nastave Tjedana Sati Grupa
Konecki Mario Nositelj Predavanja
Vježbe u praktikumu
Predavanja
Vježbe u praktikumu
7
1
1
1
2
2
1
2
1
10
1
5
Kudelić Robert Nositelj Predavanja
Vježbe u praktikumu
Predavanja
Vježbe u praktikumu
7
13
1
1
2
2
1
2
1
10
1
5
Banić Bojan Vanjski suradnik Vježbe u praktikumu 0 2 0
Slunjski Toni Vanjski suradnik Vježbe u praktikumu 0 2 0
Cafuk Renato Vanjski suradnik Vježbe u praktikumu 0 2 0
Sadržaj predavanja
  • Algoritamski način razmišljanja i izgradnja algoritama. (2 sata)
    Definicija i primjeri algoritamskog načina razmišljanja. Metode izgradnje algoritama.
  • Uvod u programske jezike. (2 sata)
    Povijest programskih jezika. Povijest programskog jezika C++. Osnovne ideje programiranja. Proceduralni, funkcijski i logički programski jezici. Relacijski i objektno orijentirani programski jezici.
  • Slijed (sekvenca) u programskom jeziku. Tipovi podataka i varijable. Aritmetički izrazi. (2 sata)
    Deklaracija i definicija varijabli. Vrste varijabli. Brojevni sustavi. Pretvaranje zapisa u različite brojevne sustave. Način zapisivanja varijabli u memoriji. Pravila za definiranje identifikatora varijabli. L-vrijednosti. Konstantne vrijednosti. Definiranje tipa kostante u aritmetičkim izrazima. Deklarirane konstante. Načini deklaracije konstanti. Cjelobrojni tipovi podataka, tipovi podataka s pomičnim zarezom. Aritmetički izrazi.
  • Logički izrazi. Selekcije u programskom jeziku. (4 sata)
    Operandi i operatori. Aritemtički operatori Operatori uspoređivanja Logički operatori. Operatori pridruživanja. Bitovni operatori. Selekcije. Ugnježđene selekcije.
  • Iteracije u programskom jeziku. Polja. Stringovi. (4 sata)
    Iteracije. Iteracije s logičkim uvjetom. Iteracije s eksplicitnim brojačem. Skokovi.
  • Mehanizmi agregacije podataka. (4 sata)
    Polja. Nizovi znakova. Učitavanje i rad s nizovima zakova. Slogovi. Način definicije i korištenja. Korisnički definirani tipovi podataka. Unije.
  • Pokazivači u programskom jeziku. (2 sata)
    Dinamičko alociranje memorije. Osnove rada programska hrpe. Funkcije s varijabilnim parametrima.
  • Funkcije u programskom jeziku. Rekurzije. (4 sata)
    Definicija funkcije. Rekurzije. Osnove rada programskog stoga.
  • Osnovni algoritmi pretraživanja i sortiranja polja u programskom jeziku. (4 sata)
    Slijedno pretraživanje. Poboljšani algoritmi sljednog pretraživanja Binarno pretraživanje. Algortam. Uvjeti korištenja. Usporedba binarnog i sljednog pretraživanja. Jednostavno sortiranje zamjenom. Sortiranje izborom. Sortiranje umetanjem. Mjehuričasto sortiranje. Sortiranje spajanjem. Quicksort.
  • Osnove rada s datotekama. (2 sata)
    Tekstualne i tipizirane datoteke. Rad s datotekama u programskom jeziku C++.
Sadržaj seminara/vježbi
Ishodi učenja kolegija
  • Formulirati programski problem jednoznačno i jasno prema pravilima zadavanja masovnih problema.
  • Prepoznati osnovne dijelove algoritma, konkretizirati ih do razine proceduralnog algoritma te ih zapisati pomoću pseudokoda ili dijagrama aktivnosti.
  • Odabrati odgovarajuće tipove podataka zadanog problema te odgovarajuće mehanizme agregacije za efikasno pohranjivanje ulaznih podatka i implementirati odabranu organizaciju podataka u zadanom imperativnom programskom jeziku.
  • Prilagoditi i optimizirati algoritamsko rješenje zadano pseudokodom ili dijagramom aktivnosti specifičnostima programskih konstrukata zadanog imperativnog programskog jezika.
  • Odabrati odgovarajuću strukturu zapisa za pohranjivanje podataka u datoteke te ju implementirati u zadanom imperativnom programskom jeziku.
  • Protumačiti poruke pogrešaka i upozorenja koje vraća prevoditelj programa i u skladu s njima ispraviti zadani program.
  • Otkriti logičke pogreške u zadanom programskom rješenju korištenjem programskog alata (eng. debugging).
  • Realizirati efikasno pohranjivanje podataka u memoriji pomoću dinamičke alokacije memorije u zadanom imperativnom programskom jeziku
  • Odabrati dijelove alogritma koji se mogu izdvojiti u zasebne cjeline i izvesti kao potprogrami te ih imlementirati u zadanom programskom jeziku.
  • Razviti rekurzivno rješenje zadanog programskog problema i izvesti ga u odabranom imperativnom programskom jeziku.
  • Odabrati testne primjere ulaznih podataka ta testiranje zadanog programa za uobičajene i rubne dozvoljene instance zadanog problema.
  • Odabrati odgovarajući osnovni algoritam pertraživanja ili sortiranja niza podataka u skladu s njegovom veličinom i uređenošću.
Ishodi učenja programa
  • razumjeti i primijeniti ključne aspekte informacijske tehnologije (programiranje, algoritmi, strukture podataka, baze podataka i znanja
  • razumjeti i primijeniti metode, tehnike razvoja informacijskih i programskih sustava u suvremenim razvojnim okolinama
Osnovna literatura
  • Lovrenčić, A. Konecki, M. Programiranje u 14 lekcija. Fakultet organizacije i informatike, Varaždin, 2017.
Dopunska literatura
  • Programming languages – C++, ISO/IEC JTC1 WG21 3690
  • B. Stroustrup: The C++ Programming Language, Pearson Education, 2014.
Slični kolegiji
Redoviti studenti Izvanredni studenti
izvanredni rok
Datum: 13.04.2026.
Vrijeme: 16:00
Opis: Na Fakultetu
U kalendaru ispod se nalaze konzultacije predmetnih nastavnika, no za detalje o konzultacijama možete provjeriti na profilu pojedinog predmetnog nastavnika.
2025 © Fakultet organizacije i informatike, Centar za razvoj programskih proizvoda