FESB NASTAVA
Loading...
    Stručni
    550 Računarstvo
    2. semestar
    Nema predmeta

    Programiranje 2

    (FELP03)
    2024/25 godina
    preduvjeti za upis
    Nema
    ciljevi predmeta

    Osposobljavanje studenata za:
    1. razumijevanje i primjenu temeljnih znanja o programiranju korištenjem programskog jezika C,
    2. korištenje funkcija iz standardnih biblioteka programskog jezika C kao što su funkcije za unos i ispis podataka, rad sa stringovima i matematičkim funkcijama,
    3. pisanje funkcija u programu, te korištenje pokazivača, dinamičke alokacije memorije i struktura podataka.

    očekivani ishodi učenja

    Studenti će nakon uspješno savladanog predmeta moći:
    1. objasniti osnovne pojmove vezane uz izradu, prevođenje i pokretanje C programa,
    2. napisati, pokrenuti i izvršiti jednostavan C program,
    3. u izradi programa koristiti funkcije, pokazivače i dinamičku alokaciju memorije,
    4. kreirati korisničke tipove podataka korištenjem struktura i unija,
    5. realizirati unos podataka u program iz datoteka kao i ispis rezultata programa u datoteku,
    6. koristiti program za pronalaženje pogreški (engl. debugger) kod pronalaženja pogreški u programu.

    nositelji predmeta
    nastava i predavači
     
    60 sati
    4 sata tjedno × 15 tjedana
     
    Auditorne vježbe
    30 sati
    2 sata tjedno × 15 tjedana
     
    Laboratorijske vježbe
    30 sati
    2 sata tjedno × 15 tjedana
    sadržaj

    Uvod u semantiku C programskog jezika – osnovni tipovi, varijable, izrazi. Deklariranje korisničkih tipova podataka. Strukture. Pobrojani tipovi. Unije. Funkcije. Prijenos parametara po vrijednosti i po referenci. Doseg i trajanje varijable. Pokazivači. Adresni operatori. Pointeri i nizovi. Alociranje memorije. Manipulacija nad bitovima. Ulazno-izlazne operacije. Modularno programiranje i funkcionalna dekompozicija programa. Leksički pretprocesor: korištenje simbola, makro naredbi i zaglavlja. Uvjetno kompajliranje. Definicija automatskih, statičkih i vanjskih varijabli. Razlika između statičkih i vanjskih funkcija. Apstraktni tipovi podtaka – primjeri stog, red, lista, stablo. Stil programiranja.

    preporučena literatura
    • Ivo Mateljan:”Računala i programiranje”, Skripta , FESB, Split 2004

    • Byron S.Gottfried: "Programming with C", Schaum's Outlines, McGraw-Hill, New York 1996 (ISBN 0-07-024035-3)

    dopunska literatura
    jezik poduke
    Hrvatski
    način praćenja kvalitete i uspješnosti izvedbe svakog predmeta i/ili modula

    Mišljenja studenata o kvaliteti nastave putem anketa.
    Nastavnici koji podučavaju srodne predmete surađuju i zajednički vode brigu o kvaliteti nastave.
    Povremeno promatranje i evaluacija nastave od strane predstojnika odsjeka/ šefa katedre, itd.

    ispit (način polaganja, ispitni rokovi)

    Ispit se sastoji od teoretskog i laboratorijskog dijela. Jednom kada se neki od dijelova položi, ocjena vrijedi do kraja akademske godine.
    Laboratorijski dio se polaže na računalima po završetku laboratorijskih vježbi, te nakon toga na svakom ispitnom roku.
    Teoretski dio se polaže pismeno i to podijeljen u dva kolokvija. Tijekom semestra bit će organiziran jedan kolokvij, a na svim ostalim rokovima studenti mogu birati koji će kolokvij polagati (mogu i oba istovremeno).
    Uvjeti za pozitivnu ocjenu su: odrađene laboratorijske vježbe 100%, pozitivna ocjena iz laboratorijskih vježbi i više od 50% bodova na svakom od kolokvija.
    Konačna ocjena se računa na slijedeći način:
    Ocjena = 0,5*L + 0,5*T
    L - ocjena iz laboratorijskih vježbi,
    T – ocjena iz teoretskog dijela.
    Ocjena na teoretskom djelu ispita u ovisnosti o broju bodova se formira na slijedeći način:
    50% do 61% - dovoljan (2),
    62% do 74% - dobar (3),
    75% do 87% - vrlo dobar (4),
    88% do 100% - izvrstan (5).
    Ispitni rokovi: Prema kalendaru nastave.

      Nastavne jedinice za Predavanja Broj sati
    1.

    Uvod u semantiku C programskog jezika. Pridruživanje datoteka programu. Komentari. Osnovni tipovi podataka. Deklariranje varijabli.

    4 sata
    2.

    Naredbe preprocesoru. Aritmetički operatori. Prefix/postfix inkrement/dekrement operatori. Stil programiranja

    4 sata
    3.

    Unos s tipkovnice. Relacijski operatori. Iteracije (for petlja). Selekcija (if naredba, if else). Logički operatori u složenim relacijama, While petlja. Do while petlja. Switch/case naredba.

    4 sata
    4.

    Nizovi. Deklariranje nizova. Nizovi znakova (stringovi). Funkcije za rad sa stringovima i znakovima. Unos znaka i stringa s tipkovnice.

    4 sata
    5.

    Višedimenzionalni nizovi. Vrednovanje korisničkog unosa.

    4 sata
    6.

    Funkcije. Doseg i trajanje varijable. Prijenos parametara po vrijednosti i po referenci. Niz kao argument funkcije. Rekurzivne funkcije. Definicija automatskih, statičkih i vanjskih varijabli.

    4 sata
    7.

    Deklariranje korisničkih tipova podataka. Strukture. Pobrojani tipovi. Unije. Nizovi struktura. Struktura unutar strukture.

    4 sata
    8.

    Pokazivači. Adresni operatori. Pokazivači na znakove, nizove i nizove znakova. Pokazivači na strukture. Pokazivači u strukturama.

    4 sata
    9.

    Rad s datotekama.

    4 sata
    10.

    Dinamičko alociranje memorije. Apstraktni tipovi podataka - vezane liste.

    4 sata
    11.

    Pronalaženje elementa u listi. Dodavanje elementa u listu iza i ispred određenog elementa. Sortiranje liste.

    4 sata
    12.

    Naredbe break, continue i exit. Sistemski pozivi. Argumenti funkcije main.

    4 sata
    13.

    Preprocesorski izrazi. Uvjetno prevođenje. Typedef. Brojivi tipovi podataka. Pokazivači na funkcije Formati za stringove i karaktere sistemski pozivi.

    4 sata
      Nastavne jedinice za Auditorne vježbe Broj sati
    1.

    Uvod u semantiku C programskog jezika. Pridruživanje datoteka programu. Komentari. Osnovni tipovi podataka. Deklariranje varijabli.

    2 sata
    2.

    Naredbe preprocesoru. Aritmetički operatori. Prefix/postfix inkrement/dekrement operatori. Stil programiranja

    2 sata
    3.

    Unos s tipkovnice. Relacijski operatori. Iteracije (for petlja).

    2 sata
    4.

    Selekcija (if naredba, if else). Logički operatori u složenim relacijama, While petlja. Do while petlja. Switch/case naredba.

    2 sata
    5.

    Nizovi. Deklariranje nizova. Nizovi znakova (stringovi). Funkcije za rad sa stringovima i znakovima. Unos znaka i stringa s tipkovnice.

    2 sata
    6.

    Višedimenzionalni nizovi. Vrednovanje korisničkog unosa.

    2 sata
    7.

    Funkcije. Doseg i trajanje varijable. Prijenos parametara po vrijednosti i po referenci. Niz kao argument funkcije. Rekurzivne funkcije. Definicija automatskih, statičkih i vanjskih varijabli.

    2 sata
    8.

    Dodatni operator pridruživanja. Uvjetni operatori. Konverzija tipova podataka. Ispisivanje ASCII vrijednosti znaka. Rad sa bitovima. Upravljanje pozicijom kursora.

    2 sata
    9.

    Deklariranje korisničkih tipova podataka. Strukture. Pobrojani tipovi. Unije. Nizovi struktura. Struktura unutar strukture.

    2 sata
    10.

    Pokazivači. Adresni operatori. Pokazivači na znakove, nizove i nizove znakova. Pokazivači na strukture. Pokazivači u strukturama.

    2 sata
    11.

    Rad s datotekama.

    2 sata
    12.

    Dinamičko alociranje memorije. Apstraktni tipovi podataka - vezane liste.

    2 sata
    13.

    Naredbe break, continue i exit. Sistemski pozivi. Argumenti funkcije main.

    2 sata
      Nastavne jedinice za Laboratorijske vježbe Broj sati
    1.

    Pisanje prvog programa. Prevođenje i pokretanje programa.

    2 sata
    2.

    Unos podataka s tastature i ispis na ekran.

    2 sata
    3.

    Primjeri for petlje.

    2 sata
    4.

    Primjeri if naredbe, logičkih operatora u složenim relacijama i while petlje.

    2 sata
    5.

    Switch/case. Nizovi.

    2 sata
    6.

    Matrice i stringovi.

    2 sata
    7.

    Funkcije.

    2 sata
    8.

    Rekurzivne funkcije.

    2 sata
    9.

    Strukture.

    2 sata
    10.

    Pokazivači. Pokazivači na osnovne tipove podataka.

    2 sata
    11.

    Pokazivači na strukture i nizove.

    2 sata
    12.

    Dinamičko alociranje memorije.

    2 sata
    13.

    Rad s datotekama

    2 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.