PROGRAMIRANJE
Samostalne aktivnosti učenja
Samostalne aktivnosti učenja nadopunjuju rad na nastavi. Ovdje se nalaze pitanja, zadaci, kratka istraživanja i drugi sadržaji kojima možeš samostalno provjeravati razumijevanje, uvježbavati naučeno i istraživati različite načine rješavanja problema. Aktivnosti su povezane s ishodima koje obrađujemo tijekom nastave i ne moraju se sve provoditi na isti način ni u isto vrijeme.
Kako raditi?
Prije rješavanja pokušaj svojim riječima objasniti ključne pojmove.
Pokušaj zadatak riješiti samostalno prije traženja gotovog primjera.
Pokreni program s različitim ulaznim podacima i provjeri ponaša li se rješenje kako očekuješ.
Usporedi svoje rješenje s drugim primjerima i pokušaj objasniti razlike.
Funkcije i rekurzija u programiranju
6 ishoda učenja · 10 sati samostalnih aktivnosti
I1 Odrediti ulazne i izlazne parametre funkcionalnih cjelina
Razmisli
Možeš li prepoznati što funkcija prima, a što vraća?
- Objasni svojim riječima razliku između parametra i argumenta.
-
Što znači povratni tip
void? - Navedi primjer funkcije koja prima podatak, ali ne vraća vrijednost.
- Navedi primjer funkcije koja prima dva podatka i vraća jedan rezultat.
-
Zašto je korisno neku obradu izdvojiti iz
main()funkcije?
Analiziraj
Ulaz – obrada – izlaz
Za svaku od sljedećih funkcija odredi:
- ulazne podatke,
- što funkcija obrađuje,
- što predstavlja njezin izlaz.
int kvadrat(int x)
{
return x * x;
}
void ispisiPoruku(string ime)
{
cout << "Pozdrav, " << ime;
}
double prosjek(double a, double b, double c)
{
return (a + b + c) / 3;
}
Imaju li sve tri funkcije izlaz? Razlikuje li se programski izlaz funkcije od ispisa na zaslon?
Isprobaj
Napiši male funkcije
Za svaki zadatak najprije odredi parametre i povratni tip, a zatim napiši funkciju.
- Funkcija prima cijeli broj i vraća njegovu apsolutnu vrijednost.
- Funkcija prima dva cijela broja i vraća veći.
- Funkcija prima duljinu i širinu pravokutnika i vraća površinu.
- Funkcija prima temperaturu u stupnjevima Celzija i vraća temperaturu izraženu u Fahrenheitima.
- Funkcija prima ime učenika i ispisuje pozdrav. Treba li takva funkcija nešto vratiti?
Pronađi pogrešku
Zašto ovaj kod nije dobar?
void zbroj(int a, int b)
{
return a + b;
}
Objasni problem, a zatim napiši najmanje dva moguća ispravna rješenja.
Istraži
Funkcija ili običan izraz?
Razmisli kada je izdvajanje koda u funkciju korisno, a kada bi samo nepotrebno zakompliciralo program.
Pronađi ili napiši dva mala programa:
- jedan u kojem funkcija poboljšava rješenje,
- jedan u kojem izdvajanje vrlo jednostavnog izraza u posebnu funkciju nema mnogo smisla.
Pokušaj obrazložiti svoj izbor.
Primjeri i vježbe na mreži
AI kao pomoćnik
Nemoj tražiti gotovo rješenje
Umjesto zahtjeva „riješi zadatak”, pokušaj AI alatu postaviti pitanja koja ti pomažu razumjeti vlastiti kod.
„U ovoj funkciji označi što su parametri, argumenti i povratna vrijednost. Nemoj mijenjati kod.”
„Postavi mi tri pitanja kojima mogu provjeriti razumijem li ulazne i izlazne podatke funkcije.”
„Nemoj napisati rješenje. Reci mi samo je li povratni tip koji sam odabrao prikladan i objasni zašto.”
Provjeri svaki odgovor na primjeru programa. AI može pogriješiti ili predložiti rješenje koje nije prilagođeno zadatku koji rješavaš.
Samoprocjena
Prije nego prijeđeš dalje
- Mogu prepoznati parametre funkcije.
- Mogu razlikovati parametar od argumenta.
- Mogu odrediti treba li funkcija vratiti vrijednost.
- Mogu odabrati prikladan povratni tip funkcije.
- Mogu napisati i pozvati jednostavnu funkciju s parametrima.
- Mogu objasniti čemu funkcija služi u većem programu.
I3 Upotrijebiti polje kao argument funkcije
Ovdje će biti pitanja, kratki problemski zadaci, primjeri, mrežni izvori i aktivnosti za samostalno uvježbavanje.
I4 Identificirati i izdvojiti manje cjeline u problemu te ih integrirati u rješenje
I5 Analizirati algoritam, izraditi funkcionalne cjeline i integrirati ih u program
I2 Prepoznati i koristiti rekurziju u rješavanju problema
I6 Procijeniti učinkovitost rješenja i odabrati optimalno rekurzivno ili iterativno rješenje
Drugi skup ishoda učenja
3 ishoda učenja · 15 sati samostalnih aktivnosti
I1 Naziv ishoda učenja
I2 Naziv ishoda učenja
I3 Naziv ishoda učenja
Treći skup ishoda učenja
5 ishoda učenja · 10 sati samostalnih aktivnosti