FESB NASTAVA
    Prijediplomski
    120 Računarstvo
    2. semestar
    Nema predmeta

    Programiranje

    (FESB01)
    2024/25 godina
    preduvjeti za upis
    nema
    ciljevi predmeta

    Osposobljenost za korištenje programskog jezika C u rješavanju programerskih zadataka.

    očekivani ishodi učenja

    Nakon završenog kolegija, studenti će biti sposobni (studenti će moći):
    1. Kreirati algoritam za rješavanje jednostavnih programerskih i numeričkih problema,
    2. Upotrijebiti sintaksu i semantiku programskog jezika C u kreiranju programskog koda.
    3. Osmisliti, primijeniti, testirati i otkloniti greške u programu koji koristi polja i petlje.
    4. Osmisliti, primijeniti, testirati i otkloniti greške u programu koji koristi funkcije.
    5. Osmisliti, primijeniti, testirati i otkloniti greške u programu koji koristi pokazivače, pokazivače na funkciju i polje pokazivača.
    6. Osmisliti, primijeniti, testirati i otkloniti greške u programu koji koristi rekurzivne funkcije.
    7. Osmisliti, primijeniti, testirati i otkloniti greške u programu koji koristi strukture i pokazivače na strukture.
    8. Osmisliti, primijeniti, testirati i otkloniti greške u programu koji koristi datoteke.

    nastava i predavači
     
    45 sati
    3 sata tjedno × 15 tjedana
     
    30 sati
    2 sata tjedno × 15 tjedana
    10 grupa
    sadržaj

    Uvod u semantiku C programskog jezika – osnovni tipovi, varijable, izrazi. Deklariranje korisničkih tipova podataka. Ukalupljivanje (cast) 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
    • Željan Lozina: Uvod u programiranje, Sveučilište u Splitu, Split, 2006.on line literatura: GNU manulas

    dopunska literatura
    • Herbert Shildt: C: The complete reference, Osborne/McGraw-Hill, 4th ed., 2000.

    • Eric Roberts: Programming abstractions in C, Addison Weslay, 1998.

    • Bayron Gottfried: Programming with C, McGraw-Hill/schaum's outlines, 2nd ed. 1996.on line tecajevi

    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 i od strane ureda za promicanje kvalitete.

    ispit (način polaganja, ispitni rokovi)

    Tijekom semestra održat će se dva kolokvija. Prvi kolokvij (K1) odrzat ce se polovicom semestra, a drugi kolokvij (K2) na kraju semestra.
    Prvi kolokvij sastoji se od dva programska zadatka:
    - Svaki programski zadatak sastoji se od dva dijela i nosi 20 bodova (ukupno 40 bodova).
    Drugi kolokvij sastoji se od dva programska zadatka i jednog teoretskog zadatka (ukupno 60 bodova),
    - Svaki programski zadatak sastoji se od dva dijela i nosi 20 bodova.
    - Teoretski zadatak sastoji se od nekoliko kratkih pitanja s 4 ponuđena odgovora. Samo je jedan odgovor točan. Točan odgovor nosi +3 poena, a netočan -1 poen. Teoretski zadatak ukupno nosi 20 bodova.

    Pojedini kolokvij se smatra položenim ukoliko je student ostavrio najmanje 20 bodova.
    Ukupno bodova(%) = K1 + K2
    Student na završnim ispitima polaže onaj dio gradiva koji nije položio na kolokvijima.

    Konačna se ocjena, pod uvjetom da je student položio oba kolokvija, utvrđuje na kraju semestra (nakon završenih rokova) na sljedeći način:
    15% najnize rangiranih - dovoljan (2)
    35% sljedecih - dobar (3)
    35% sljedecih - dobar (4)
    15% najbolje rangiranih - izvrstan (5)

    Popravni ispit: Popravni ispit je jedna cjelina. Popravni ispit se sastoji od dva zadatka. Potrebno je riješiti jedan zadatak za pozitivnu ocjenu. Na popravnom ispitu najviša ocjena je dovoljan (2).

    Ispitni rokovi: Prema kalendaru nastave

      Nastavne jedinice za Predavanja Broj sati
    1.

    Uvod. Ponavljanje temeljnih pojmova. Računalo, procesor, memorija. Program. Programski jezik. Paradigme: objektna, logička, funkcijska. Prevoditelj i interpreter. Apatrakcija. Objekt. Varijabla. Konstanta.

    3 sata
    2.

    Algoritmi - osnovni pojmovi: linijska, ciklična i razgranata struktura. Naredbe kontrole toka. Primjeri implementacija u u programskom jeziku C.

    3 sata
    3.

    Objekti i varijable. Tip. Pokazivači.

    3 sata
    4.

    Funkcija. Mehanizam poziva. Stog. Skrivanje.

    3 sata
    5.

    Pokazivači i funkcije.
    Dinamičko alociranje memorije. Rad s objektima.

    3 sata
    6.

    Polja. Polja i pokazivači. Nizovi znakova.
    Doseg. Vijek. Mapa memorije. Memorijske klase. Sijena (shedow).

    3 sata
    7.

    Struktura. Unije. Enumerirani tip. (Konstante: pregled)
    Strukture i pokazivači.
    Strukturno, proceduralno, modularno.

    3 sata
    8.

    Ponavljanje - Međuispit

    3 sata
    9.

    Predprocesorske instrukcije. Strukture podataka: red, stog, lista, stablo. Primjeri u C.
    Algoritmi: iteracija i rekurzija. Pretraživanje. Sortiranje.

    3 sata
    10.

    Biblioteke. Standardne biblioteke.
    Rad s funkcijama iz standardne biblioteke: rukovanje nizovima znakova.

    3 sata
    11.

    Rad s datotekama.

    3 sata
    12.

    Grafičke biblioteke (SDL, Open GL)

    3 sata
    13.

    Objekt i objektno programiranje.

    3 sata
    14.

    Objekt razlomak.

    3 sata
    15.

    Ponavljanje - Međuispit

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

    Ponavljanje, varijable, tip, pokazivac, ispis.

    2 sata
    2.

    Naredbe kontrole toka. Funkcija.

    2 sata
    3.

    Pokazivaci i funkcije, polja.

    2 sata
    4.

    Polja i pokazivaci I. Dinamicko alociranje memorije.

    2 sata
    5.

    Pokazivaci na funkcije.

    2 sata
    6.

    Polja i pokazvaci II, pokazvac na pokazivac.

    2 sata
    7.

    Rekurzija.

    2 sata
    8.

    Ponavljanje - Međuispit

    2 sata
    9.

    Struktura.

    2 sata
    10.

    Struktura i pokazivaci.

    2 sata
    11.

    Rad s datotekama

    2 sata
    12.

    Rad s funkcijama iz standardne biblioteke: rukovanje nizovima znakova, slučajni brojevi.

    2 sata
    13.

    Bit operatori i polje bitova.

    2 sata
    14.

    Numerički zadaci. Numeričko integriranje, maksimum i minimum funkcije.

    2 sata
    15.

    Ponavljanje - Međuispit

    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.