Uvod u programiranje
Vođeni proces učenja i poučavanja
Pregled sadržaja obrađenih tijekom nastave i materijala koji služe kao podsjetnik, dodatno objašnjenje ili proširenje gradiva. Opseg i dubina obrade prilagođavaju se predznanju učenika, pitanjima i raspoloživom vremenu.
SIU 1
Osnove programiranja
Koristiti osnovne tipove podataka, matematičke, logičke i operatore usporedbe te ugrađene matematičke funkcije u linearnim problemima
Uvod u modul
Upoznavanje sa sadržajem, načinom rada i očekivanjima.
Algoritmi i podatkovne strukture
Osnovni pojmovi algoritama, svojstva algoritama i načini zapisivanja algoritama.
Osnovna struktura programa
Razvojno okruženje, pravila pisanja programa, ključne riječi, tipovi podataka, varijable, konstante, konverzije i komentari.
Naredba pridruživanja, izrazi i operatori
Aritmetički, logički i relacijski operatori, unarni, binarni i ternarni operatori te prioriteti izvođenja.
Ulaz, izlaz i matematičke funkcije
Ugrađene funkcije za unos i ispis podataka te uporaba standardnih matematičkih funkcija.
Usporedba C++ i Pythona, dodatni primjeri konverzija podataka, složeniji izrazi i primjena matematičke biblioteke.
Odrediti korake za rješavanje problema pomoću pseudokoda
Linijska algoritamska struktura
Redoslijed naredbi i rješavanje jednostavnog linearnog problema.
Razgranata algoritamska struktura
Odabir tijeka izvođenja ovisno o zadanom uvjetu.
Ciklička algoritamska struktura
Ponavljanje naredbi i osnovni modeli cikličkih algoritama.
Analiza algoritama
Provjera ispravnosti koraka, ulaznih podataka i očekivanog rezultata.
Usporedba dijagrama tijeka i pseudokoda, analiza ispravnosti te jednostavna procjena učinkovitosti algoritma.
Izraditi algoritam i program u odabranom programskom jeziku rješavajući problem uporabom grananja
Jednostruko i potpuno grananje
Naredbe if i if-else.
Ugniježđeno grananje
Kombiniranje više uvjeta i naredbi odlučivanja.
Višestruko grananje
Naredba switch-case i izbor odgovarajućeg slučaja.
Složeni logički izrazi, provjera valjanosti ulaznih podataka i usporedba različitih rješenja istog problema.
Izraditi algoritam i program rješavajući problem uporabom petlje s određenim brojem ponavljanja
Petlja s poznatim brojem ponavljanja
Petlja for, brojačka varijabla, početna vrijednost,
uvjet i promjena brojača.
Ugniježđene petlje
Kombiniranje više petlji i oblikovanje složenijih ispisa.
Ispis uzoraka, tablice vrijednosti, kombiniranje petlje i grananja te jednostavne simulacije.
Izraditi algoritam i program rješavajući problem uporabom petlje s uvjetom na početku ili kraju
Petlja s uvjetom na početku
Petlja while i provjera uvjeta prije izvođenja.
Petlja s uvjetom na kraju
Petlja do-while i najmanje jedno izvođenje tijela petlje.
Ugniježđene petlje
Kombiniranje petlji i odabir prikladne vrste ponavljanja.
Provjera valjanosti unosa, izbornici vođeni petljom,
beskonačne petlje i usporedba for, while
i do-while.
SIU 2
Spremnički tipovi podataka
Prikupiti i analizirati korisničke zahtjeve za programsko rješenje
Osobnosti korisnika i intervjui
Utvrđivanje korisničkih potreba, izlučivanje zahtjeva i pisanje korisničkih izjava.
Prioritizacija i dokumentiranje zahtjeva
Određivanje prioriteta korisničkih izjava, izrada dokumenta sa zahtjevima, evaluacija i refleksija.
Funkcionalni i nefunkcionalni zahtjevi, analiza loše definiranih zahtjeva te rad u paru ili timu.
Izraditi jednostavnije programsko rješenje uporabom funkcija jednodimenzionalnog ili dvodimenzionalnog slijednog spremnika
Jednodimenzionalno polje
Deklariranje, inicijalizacija, pristup elementima i osnovni algoritmi.
Dvodimenzionalno polje
Rad s retcima, stupcima i elementima matrice.
Nizovi znakova i stringovi
C-stringovi, klasa string i osnovne operacije nad tekstom.
Vektor i linijske strukture
Uvod u spremnike promjenjive veličine i osnovne pojmove linijskih struktura podataka.
Pokazivači, osnovni pojmovi struktura i objekata te usporedba polja, stringa i vektora mogu se uključiti prema mogućnostima razreda.
Izraditi jednostavnije programsko rješenje uporabom funkcija zbirke stog
Standard Template Library
Osnovni pojam STL-a, spremnici, iteratori i algoritmi.
Vektor kao uvod u STL spremnike
Inicijalizacija, metode, prolazak i osnovni algoritmi.
Pojam stoga
Stog kao apstraktni tip podataka, LIFO načelo i primjeri iz svakodnevnog života.
Stog u C++ i problemski zadaci
Operacije push, pop, top,
empty i size te tipične primjene.
Povijest preglednika, undo funkcionalnost, pretvorba izraza, provjera zagrada i složeniji natjecateljski zadaci.
Izraditi jednostavnije programsko rješenje uporabom funkcija zbirke red
Pojam reda i red kao ADT
FIFO načelo i primjeri reda iz svakodnevnog života.
STL queue i osnovne operacije
Operacije push, pop, front,
back, empty i size.
Implementacija i problemski zadaci
Uporaba reda u algoritmima, simulacijama i obradama zahtjeva.
Red s korisnički definiranim objektima
Pohrana i obrada složenijih elemenata u redu.
Koristiti funkcije zbirke elemenata čiji redoslijed nije zadan smještajem u memoriji — lista
Pojam liste i osnovne operacije
Elementi liste, umetanje, uklanjanje i prolazak kroz listu.
Algoritmi i problemski zadaci
Primjena lista u rješavanju problema i uporaba metoda spremnika.
Implementacija i naprednija primjena
Odabir liste i uporaba u zahtjevnijim algoritmima.
Rekapitulacija i odabir spremnika
Usporedba spremnika vector, stack,
queue i list.
Završni pregled