Cilj predmeta je omogućiti studentima stjecanje temeljnih znanja i vještina iz:
-arhitekture i osnovnih sastavnih dijelova računala te načina njihova međudjelovanja;
-brojevnih sustava i predstavljanja podataka u računalu;
-organizacije i korištenja memorije računala;
-algoritamskog pristupa rješavanju problema;
-osnovnih i složenijih programskih konstrukcija jezika C;
-razvoja, testiranja i otklanjanja pogrešaka u jednostavnim programima.
očekivani ishodi učenja
Nakon uspješno savladanog predmeta studenti će biti sposobni:
1. Opisati osnovnu arhitekturu računala, ulogu njegovih sastavnih dijelova i osnovni način izvođenja programa.
2. Objasniti i primijeniti binarno predstavljanje cijelih i realnih brojeva, znakova i drugih jednostavnih podataka u memoriji računala.
3. Analizirati problem i oblikovati algoritamsko rješenje primjenom slijednog izvođenja, grananja, ponavljanja i dekompozicije problema.
4. Razviti program u jeziku C primjenom odgovarajućih tipova podataka, izraza, operatora, upravljačkih struktura, funkcija i polja.
5. Analizirati, testirati i ispraviti program u jeziku C te prepoznati tipične sintaktičke, semantičke i izvođačke pogreške.
Uvod u računarstvo i razvoj računalnih sustava. Povijest računarstva i osnovna područja računarstva.
Brojevni sustavi i binarno predstavljanje podataka. Predstavljanje cijelih i realnih brojeva, znakova i drugih vrsta podataka u računalu. Osnove kodiranja informacija.
Osnovna arhitektura računala. Procesor, memorija, sabirnice i ulazno/izlazne jedinice. Instrukcijski ciklus i izvođenje instrukcija. Osnovni instrukcijski formati i načini adresiranja. Organizacija i upravljanje memorijom.
Osnove programiranja u programskom jeziku C. Struktura i prevođenje programa. Tipovi podataka, konstante i varijable. Ulaz i izlaz podataka. Aritmetički, relacijski, logički i bitovni operatori. Izrazi i naredbe pridruživanja.
Algoritamsko rješavanje problema. Slijedno izvođenje, grananje i petlje. Ugniježđene upravljačke strukture. Razvoj algoritma postupnim poboljšavanjem i dekompozicijom problema.
Funkcije, parametri, povratne vrijednosti i područje važenja varijabli. Modularna organizacija programa.
Razvoj, testiranje i otklanjanje pogrešaka u programu. Vrste programskih pogrešaka, korištenje alata za prevođenje i debugiranje te osnovna načela sigurnog i pouzdanog programiranja.
Primjena programiranja na jednostavne numeričke, algoritamske i inženjerske probleme.
preporučena literatura
J. Glenn Brookshear, Dennis Brylow, Computer Science: An Overview, 13th Edition, Pearson, 2019.
Learn-C.org – Free Interactive C Tutorial, online interaktivni materijali za učenje programskog jezika C. (https://www.learn-c.org)
cppreference – C Language Reference, online referentna dokumentacija za programski jezik C. (https://en.cppreference.com/c/language)
Carnegie Mellon University, Software Engineering Institute: SEI CERT C Coding Standard, online materijali za sigurno i pouzdano programiranje u jeziku C. (https://wiki.sei.cmu.edu/confluence/display/seccode)
M. Bonković, A. Kuzmanić-Skelin, R. Goić i ostali: Programski jezik C, FESB, 2025.
dopunska literatura
Tannenbaum, S. Structured Computer Organisation., Prentice-Hall, Englewood Cliffs, N.J., 1990.
jezik poduke
Hrvatski, Engleski
način praćenja kvalitete i uspješnosti izvedbe svakog predmeta i/ili modula
1. vođenje evidencije o prisutnosti na nastavi
2. godišnja analiza uspješnosti polaganja ispita
3. studentska anketa s ciljem evaluacije kvalitete nastavnika i kolegija
4. samoevulacija nastavnika
5. povratna informacija od strane studenata koji su već diplomirali (ili su na višim godinama studija) o relevantnosti sadržaja kolegija
6. povremeno promatranje i evaluacija nastava od strane šefa katedre
ispit (način polaganja, ispitni rokovi)
Tijekom semestra bit će dva međuispita (kolokvija) i završni ispit. Prvi međuispit obuhvaća prvih 6 nastavnih jedinica, a drugi preostalih 7 nastavnih jedinica. Na završnom ispitu studenti polažu dijelove gradiva koje nisu položili na međuispitima. Iz laboratorijskih vježbi se također organiziraju 2 kolokvija.
Pozitivna ocjena se dobiva na sljedeći način:
Nužni uvjet: 50% bodova na svakom međuispitu.
Ocjena(%)=0.4*K1 + 0.4*K2 +0.2*L
K1, K2 - bodovi na međuispitima izraženi u postocima.
L - prosjek bodova na kolokvijima iz lab.vježbi izražen u postocima
Na popravnom i komisijskom ispitu, polaže se cjeloviti ispit, a ocjena (%) se formira samo na osnovu rezultata ispita.
Konačna brojčana ocjena, pod uvjetom da su oba kolokvija pozitivna, se utvrđuje na sljedeći način:
Postotak Ocjena
50% do 61% dovoljan (2)
62% do 74% dobar (3)
75% do 87% vrlo dobar (4)
88% do 100% izvrstan (5)
Ispitni rokovi održavaju se u terminima predviđenim kalendarom nastave.
Nastavne jedinice za Predavanja
Broj sati
1.
Uvod u računarstvo. Povijesni razvoj računala i računarstva. Osnovna područja računarstva. Pojam algoritma i programa. Razvoj programskih jezika.
2 sata
2.
Brojevni sustavi i predstavljanje podataka. Binarni, oktalni i heksadekadski brojevni sustav. Pretvorbe između brojevnih sustava. Binarno predstavljanje podataka.
2 sata
3.
Predstavljanje podataka u računalu. Predstavljanje cijelih i realnih brojeva i znakova. Osnovni tipovi podataka u programskom jeziku C. Konstante i varijable.
2 sata
4.
Osnove programiranja u jeziku C. Struktura programa. Ulaz i izlaz podataka. Izrazi i naredbe pridruživanja. Aritmetički, relacijski, logički i bitovni operatori.
2 sata
5.
Upravljačke strukture. Slijedno izvođenje i grananje. Jednostruko i višestruko grananje. Razvoj algoritamskih rješenja primjenom grananja.
Funkcije. Definiranje i pozivanje funkcija. Parametri i povratne vrijednosti. Lokalne i globalne varijable. Dekompozicija problema i modularna organizacija programa.
2 sata
8.
Polja. Jednodimenzionalna i višedimenzionalna polja. Obrada skupova podataka primjenom polja. Znakovni nizovi.
2 sata
9.
Razvoj i analiza programa. Tehnike rješavanja problema. Postupna razrada algoritma. Testiranje programa i tehnike otklanjanja pogrešaka. Jednostavni numerički i algoritamski primjeri.
2 sata
10.
Arhitektura računala. Procesor, memorija, ulazno/izlazne jedinice i sabirnice. Osnovna organizacija i međudjelovanje sastavnih dijelova računala.
2 sata
11.
Izvođenje programa u računalu. Instrukcijski format, osnovni načini adresiranja i instrukcijski ciklus. Izvođenje instrukcija i upravljanje podacima na primjeru jednostavnog procesora.
2 sata
Nastavne jedinice za Laboratorijske vježbe
Broj sati
1.
Razvoj i izvođenje programa u jeziku C. Temeljna struktura C programa. Prevođenje i izvođenje programa. Standardni ulaz i izlaz. Varijable, konstante i osnovni tipovi podataka.
2 sata
2.
Izrazi i operatori. Naredba pridruživanja. Aritmetički, relacijski i logički operatori. Jednostavni programski zadaci.
2 sata
3.
Grananje. Primjena naredbi if, if-else i switch. Razvoj algoritama i programa s grananjem.
4 sata
4.
Petlje. Primjena petlji for, while i do-while. Ugniježđene petlje. Razvoj algoritama i programa s ponavljanjem.
4 sata
5.
Funkcije. Definiranje i pozivanje funkcija, parametri i povratne vrijednosti. Dekompozicija problema na funkcije.
4 sata
6.
Polja i znakovni nizovi. Jednodimenzionalna i višedimenzionalna polja. Obrada podataka u poljima. Osnovna obrada znakovnih nizova.
4 sata
7.
Razvoj, testiranje i otklanjanje pogrešaka. Analiza programskog koda, pronalaženje i ispravljanje pogrešaka.
2 sata
8.
Integrirani programski zadaci. Razvoj algoritama i programa koji povezuju upravljačke strukture, funkcije i polja. Primjeri zadataka usporedivih sa zadacima provjere znanja.
4 sata
Niste više prijavljeni
Istekla vam je prethodna prijava te se morate ponovno prijaviti.
Nastao je problem u radu sustava
Informacije o problemu smo pohranili i nastojat ćemo ga riješiti. Ako vas ova greška sprječava da obavite nešto važno, možete nas odmah kontaktirati na helpdesk@fesb.hr.
Vaš preglednik nije podržan
Koristite web preglednik koji nije podržan. Za puno korisničko iskustvo, preuzmite najnoviju inačicu vašeg preglednika.