You are on page 1of 100

METODIKA NASTAVE INFORMATIKE

PROBLEMSKA I PROGRAMIRANA NASTAVA


S A D R A J:
UVOD ................................................................................................................................................................................................ 2
1 O DIDAKTICI ......................................................................................................................................................................... 4

1.1
1.1.1
1.1.2
1.1.3
1.1.4
1.1.5

Razvoj didaktike misli ........................................................................................................................... 6


Wolfgang Klafki KRITIKO KONSTRUKTIVNA DIDAKTIKA..................................................... 6
Wolfgang Schulz DIDAKTIKA KAO TEORIJA POUAVANJA ......................................................... 7
Felix Von Cube DIDAKTIKA KAO KIBERNETIKO INFORMACIJSKA TEORIJA ....................... 9
Christine MllerDIDAKTIKA KAO TEORIJA KURIKULUMA ........................................................ 11
Rainer WinkelDIDAKTIKA KAO KRITIKA TEORIJA NASTAVNE KOMUNIKACIJE ............. 14

1.2
Motivacija i stilovi uenja i pouavanja ........................................................................................... 16
1.3
Modeli planiranja nastave ..................................................................................................................... 18
1.3.1
Taylerov model planiranja......................................................................................................... 18
1.3.2
Walkerov model planiranja ....................................................................................................... 19
1.3.3
Model akcijskog istraivanja ..................................................................................................... 19
2 OSNOVNI DIDAKTIKI KONCEPTI .......................................................................................................... 20
2.1
Problemska nastava ............................................................................................................................... 23
2.2
Programirana nastava ........................................................................................................................... 25
2.3
Didaktiki pristupi programiranju istraivanja ............................................................................ 27
Znakovna skala .......................................................................................................................... 27
2.3.1
2.3.2
Sustav spoznajnih ciljeva .......................................................................................................... 28
2.3.3
Rjeavanje problema.................................................................................................................. 28
2.4
Primjeri problemski orijentirane i programirane nastave ............................................................... 31
2.4.1
Uvodni dio o programskom jeziku PASCAL [7] .................................................................. 31
2.4.2
PASCAL program ..................................................................................................................... 32
2.4.3
Primjeri problemski orijentirane nastave .................................................................................. 52
2.4.4
Primjeri programirane nastave ................................................................................................. 62
3 KATEGORIZACIJA PRISTUPA .................................................................................................................... 76
3.1
Predavanja i vjebe ................................................................................................................................ 76
3.2
Vizualizacija software-a ........................................................................................................................ 77
3.2.1
Vizualizacija programa .............................................................................................................. 78
3.2.2
Animacija algoritma .................................................................................................................. 85
3.2.3
Vizualno programiranje ............................................................................................................. 93
3.3
Roboti....................................................................................................................................................... 94
3.4
Kognitivno tutorstvo .............................................................................................................................. 95
3.5
Ostalo ....................................................................................................................................................... 96
4 NAUNA ISTRAIVANJA U OBLASTI PRIMJENE VIZUALIZACIJE U NASTAVI........................ 97
5 ZAKLJUAK ..................................................................................................................................................... 99
LITERATURA .........................................................................................................................................................100

UVOD
Dananji kolski sustav ima za cilj pripremiti uenike i studente za korisne i uspjene
lanove drutva u kojem e ivjeti i raditi razvijanjem njihovih znanja i sposobnosti. U okviru
toga, veoma vano mjesto zauzima informatika. Informatika je relativno mlada znanost i
pouava se kroz osnovnu, srednju kolu i na fakultetima. Kroz predmet Informatika, predvia
se obrada gradiva podruja informacijsko komunikacijske tehnologije (ICT) i raunarstva
(Computing). Bez nje je danas nezamisliva bilo koja grana gospodarstva i znanosti.

Iz

dosadanjih saznanja, te zadanih ciljeva nastave informatike vidljiv je njen veliki znaaj.
Ciljevi i zadaci nastave informatike, u nastavnom procesu propisani su planom i programom, a
mogu se svesti na sljedee ciljeve i zadatke[20]:
Ciljevi:

Razvijanje sposobnosti uenika za upotrebu osnovnih informatikih znanja u


svakodnevnom ivotu koritenjem informatike tehnologije.

Razvijanje logikog razmiljanja i algoritamskog pristupa rjeavanju problema, te


razvijanje i primjena tih sposobnosti pisanja, testiranja i dokumentiranja programa
pisanih u nekom od programskih jezika.

Usvajanje osnovne informatike pismenosti, te sposobnost rjeavanja problema


primjenom informatike tehnologije.

Samostalno sluenje razliitim izvorima informacija u koli i izvan nje koritenjem


raunala.

Upoznavanje ciljeva i dimenzija informatizacije.

Razvijanje pravilnog odnosa prema upotrebi i zatiti programa i podataka.

Uoavanje znaaja grupnog rada u informatici.

Zadaci:

Uenike informirati o povijesti, grai i primjeni raunala u struci.

Znati osnovne dijelove konfiguracije raunala i njihovu funkciju.

Znati samostalno spojiti osnovne dijelove raunala i pravilno ga ukljuiti i iskljuiti.

Znati samostalno koristiti raunalo pri pisanju razliitih tekstova i obradi tekstova.

Znati spremiti podatke i ponovo ih pronai i upotrijebiti.

Razviti sposobnost sluenja raunalom pri uporabi raznih baza podataka.


2

Sluiti se gotovim tablinim proraunima.

Koristiti izvore informacija dostupne uz pomo raunala.

Samostalno koristiti raunalo pri rjeavanju jednostavnijih zadataka u sklopu struke s


pomou aplikacijskih raunalnih programa.

Komunicirati s drugim osobama pomou raunala.

Primijeniti steena znanja, dopunjavati ih i razvijati u svakodnevnoj praksi.

Osposobiti uenike da se samostalno slue raunalom u izradi dokumenata,


proraunskih tablica, jednostavnih baza podataka, pretraivanjem Interneta.

U zavisnosti od toga radi li se o osnovnokolskom, srednjokolskom ili visokokolskom


obrazovanju, razlikuje se opseg i stupanj sloenosti navedenih ciljeva i zadataka.
U ovom se radu bavimo problemski orijentiranom i programskom nastavom primijenjenom na
pouavanje programiranja.
Nain pouavanja je izazov, kako za profesore tako i za uenike. Za mnoge uenike
programiranje je teko i to esto ima utjecaja na njihov stav prema programiranju, a za
profesore koji pouavaju esto je vrlo obeshrabrujue kad uenici ne uspijevaju razumjeti ni
primijeniti neke osnovne principe programiranja. Zbog toga je vano da profesori vladaju i
predmetom predavanja, kao i pedagokim vjetinama. Time se potaklo traenje novih metoda i
pristupa koji bi olakali pouavanje i uenje programiranja.
Nastava, kako svih predmeta, pa tako i informatike, kao takva treba ispuniti sve svoje zadatke:
-

Materijalne stjecanje znanja

Funkcionalne - razvijanje sposobnosti

Odgojne usvajanje odgojnih vrijednosti

Ona je i komunikacijski, a to znai dvostrani proces. S jedne strane je pouavanje od strane


uitelja, a s druge uenje od strane uenika.
Kvalitetno pouavanje, koje e dati i to bolje rezultate, u velikom je zavisno od didaktikometodikih znanja, vjetina i kompetencija uitelja koji pouava. U okviru didaktike postoje
razne teorije i modeli pouavanja, pa je koritenje vie teorija i modela preduvjet kvalitetnog
nastavnog pouavanja i uenja.

1 O DIDAKTICI

Osvrnimo se na didaktiku, iz kojih proizlaze metodike, te kroz njen povijesni razvitak.


Didaktika

[1]-

je grana pedagogije koja prouava ope zakonitosti nastave i uenja. Ona

analizira i planira procese pouavanja i uenja. To je teorijsko promiljanje nastave, sustav


ideja i uputa o vjetini pouavanja. Predmet didaktike je podruje nastave u koje spada
priprema, organiziranje, realizacija, verifikacija i istraivanje teorije i nastavne prakse. Tu,
takoer, spada sustavno organizirano uenje orijentirano na razvoj pojedinca.
U procesu uenja i pouavanja najvanija tri faktora su:
- Pojedinac - sa svojim iskustvom i stupnjem razvoja pojedinih osobina,
- Uenje - kao stvaranje novog iskustva,
- Okolina socijalni faktor, nastavni i drugi sadraji s kojima pojedinac dolazi u interakciju
radi stvaranja potrebnih iskustava.
Dva temeljna pojma didaktike su uenje i pouavanje. Pri tome je uenje osnovni preduvjet
didaktike, a u funkciji je prirodnog uenja ljudi.
Dok je tradicionalna didaktika bila okrenuta nastavniku, suvremena didaktika je okrenuta
ueniku u smislu da mu pomogne u razvijanju viih misaonih procesa .
Funkcija didaktike je odreena sadrajima, ciljevima i zadacima odgoja i obrazovanja u
drutvu, ali s obzirom na dinaminu promjenu pedagokih sadraja i standarda u nauci,
mijenjaju se ciljevi i zadaci odgoja i obrazovanja. Na osnovu toga mora da se mijenja i
osuvremenjuje funkcija didaktike kao nauke o odgoju i obrazovanju u nastavi. Prije svega
potrebno je skupiti to vei broj ciljeva uenja koji dolazi u obzir za zadanu nastavnu jedinicu,
zatim te ciljeve moramo opisati tako da bude jasno koje oblike ponaanja mora izvesti uenik i
na kojem sadraju. Ako je postigao cilj, sakupljene ciljeve je potrebno rasporediti da se jasno
vidi kojim vrstama ponaanja i kojim sadrajima grupa oni pripadaju.
Proces organizacije uenja sastoji se u pravilnom izboru i primjeni nastavnih metoda. Nastavu
shvaamo kao komunikacijski proces shvaanja, informiranja, uenja i uenja u interakcijskom
djelovanju razliitih subjekata kao to su nastavnici, uenici, roditelji, mediji i dr.

Metodika je primijenjena didaktika, dakle specijalna didaktika. (slika 1)


Ona primjenjuje didaktika naela, metode i zakonitosti u okviru pojedinog podruja ili
predmeta. To je ujedno i praktina disciplina koja u prvom planu ima konkretan sadraj
nastavnog predmeta iz kojeg uenici moraju stei znanja i vjetine, a sve to specifinim
oblicima, nastavnim sredstvima i metodama vezanim za zadanu materiju. Ona se realizira kroz
suodnos nastavnog sadraja, psihologije, pedagogije, etike, sociologije i sl.
Slinost metodike i didaktike oituje se u tome to se bave nastavom, sadrajem pouavanja,
nastavnim metodama, procesima i samim organiziranjem nastave.
Razlikuju se u tome to je ona specifina i vezana za odgovarajui predmet.

PEDAGOGIJA

DIDAKTIKA
METODIKA
METODIKA

METODIKA

slika 1. Odnos pedagogije, didaktike i metodike [18]

Obrazovanjem se razvijaju i znanja kao sistem injenica i generalizacija o objektivnoj


stvarnosti,

i sposobnosti kao kvalitete linosti koja uspjeno obavlja neki rad. Te se

sposobnosti dalje dijele na senzorne, intelektualne, praktine i izraajne. Razvojem i


unapreivanjem didaktike, nastojali su se to bolje i kvalitetnije ostvariti zadani ciljevi, pa su
se u skladu s tim javljale i razliite didaktike teorije.
Promatrajui kroz prolost, moemo uoiti, kako se i sa kojim ciljevima razvijala didaktika:
5

1.1 Razvoj didaktike misli


1.1.1 Wolfgang Klafki KRITIKO KONSTRUKTIVNA DIDAKTIKA
Wolfgang Klafki, je polovinom prolog stoljea bio zaetnik didaktike kao teorije obrazovanja
u okviru kritiko-konstruktivne odgojne znanosti. Prema ovom konceptu, ope pretpostavke
planiranja nastave bile su sljedee[2]:
Ukljuivanje uenika u raspravu, ime bi se razvijale sposobnosti samoodreenja i solidarnosti
(kroz aktivno sudjelovanje razmiljanjem i obrazloenjem), poticanje razvijanja naina
miljenja kod uenika, kako bi se to bolje pripremili za probleme u ivotu; uenje
otkrivanjem, a ne samo reproduciranje znanja; uestvovanje uenika u planiranju procesa
uenja i to idui od jednostavnijem, ka sloenijem; vjebanje i ponavljanje nauenih vjetina.
Budui da svaki i uenik i uitelj ima za sobom neku socijalnu sredinu, samim tim imaju i
razliita iskustva, stavove i interese. Za njega je jako vano odrediti nastavni cilj u smislu da
pomogne uenicima da razviju svoje sposobnosti.
Po njegovoj teoriji postoji 7 problemskih podruja koje mora sadravati koncept planiranja
nastave, a to su: Pitanje o znaenju u sadanjosti, pitanje o znaenju u budunosti, pitanje o
egzemplarnom znaenju, pitanje o tematskoj strukturi, pitanje o zornosti i provjerljivosti,
problem pristupanosti i prihvatljivosti tematike, te struktura procesa poduavanja i uenja. Ta
perspektiva planiranja nastave, koja analizira sve konkretne uvjete od kojih polazi grupa
uenika (razred), uitelje, te za nastavu veoma vane institucionalne uvjete (i promjenljive i
nepromjenljive), kao i sve mogue potekoe Wolfgang Klafki skicira shemom slika 2.
Ova je teorija optimalna u fazi izbora sadraja.

Sklop obrazloenja

Tematsko strukturiranje

Odreivanje mogunosti
pristupa i prikazivanja

Metodiko strukturiranje

1. znaenje za sadanjost

4. tematska struktura
(ukljueni nastavni potciljevi)
i socijalni ciljevi uenja
6. pristupanost, odnosno
prikazivost (izmeu ostalog
pomou medija i u medijima)

2. Znaenje za budunost

7. struktura procesa pouavanja i


uenja, shvaena kao promjenjivi
koncept nunih ili moguih oblika
organizacije i provoenja uenja
(ukljueni sukcesivni tokovi) i
odgovarajuih pomagala, istodobno
kao struktura interakcije i medij
socijalnog uenja

5. zornost i provjerljivost
3. Egzemplarno znaenje,
izraeno u postavljanju opih
ciljeva nastavne jedinice,
projekta ili teaja

slika 2. Privremena shema perspektiva planiranja nastave [2]

1.1.2 Wolfgang Schulz DIDAKTIKA KAO TEORIJA POUAVANJA


Didaktiar Wolfgang Schulz bio je zaetnik didaktike kao teorije pouavanja ili didaktikog
djelovanja u polju kola. Njegovo tumaenje didaktike odnosi se na kompetenciju, autonomiju
i solidarnost. Zalae se za emancipaciju ideja koje su vodilja njegovog shvaanja odgoja i
nastave, a uitelji su tek sredstvo koje ohrabruje uenike da izgrade svoj stav.
Na temelju svojih pretpostavki slikovito je prikazao polje didaktikog djelovanja planiranja
nastave sa svim svojim elementima. Didaktiko djelovanje ima za cilj meusobno
sporazumijevanje onih koji pouavaju (P-P), s onima koji ue (U-U) , kao i njihovo
meusobno djelovanje. U interakciji s njima su i nastavni ciljevi (NC), polazne situacije i
uenika i uitelja (PS), varijable posredovanja pomou kojih elimo stii od polazita do danog
zavretka, a uz pomo metoda, raznih medija (VP), te kontrola uspjeha (KU) koja uenicima i
uiteljima omoguuje samoregulaciju meusobne komunikacije. (slika 3.)

NC

PS

KU

VP

slika 3. Prikaz grubog didaktikog planiranja nastavne jedinice sa meusobno povezanim momentima djelovanja [2]

On se bazirao na postavljanju razina planiranja nastave, pa je tako postavio model sa 4 razine:

1. Perspektivno planiranje za dulje vremensko razdoblje. (izrada godinjih i


polugodinjih planova, te planiranje niza nastavnih jedinica)
2. Grubo planiranje pojedinanih nastavnih jedinica, gdje zadani nastavni ciljevi
omoguuju razvijanje kompetencija, autonomije i solidarnosti.
3. Procesno planiranje odnosi se na pojedine nastavne teme
4. Tekua korekcija planiranja odnosi se na planiranje tijekom nastavnog procesa, ako
se to pokae potrebnim.
Didaktiko djelovanje se, po ovoj teoriji, sastoji od niza povezanih meudjelovanja kao to su:
analiza, planiranje i realizacija nastave, savjetovanje sudionika u nastavi, vrednovanje napretka
uenja i pouavanja, te meusobno djelovanje svih interesa vezanih za kolu. (slika 4.)

savjetovanje
analiza

vrednovanje

planiranje

upravljanje

ostvarenje

Kooperativno
djelovanje

slika 4. Prikaz funkcije didaktikog djelovanja [2]

Ova je teorija optimalna za postavljanje ciljeva u fazi planiranja

1.1.3 Felix Von Cube DIDAKTIKA KAO KIBERNETIKO INFORMACIJSKA


TEORIJA
Didaktiar Felix von Cube se bavio procesima odgoja i pouavanja, te obrazovnim ciljevima,
strategijama i planiranjem primjenom regulacijskog kruga, te s druge strane, primjenom pojma
znanosti na odgoj.
U prvom dijelu bavi se pojmovima odgoja i izobrazbe, pojedinano i u meusobnom
djelovanju. Ako je zadana vrijednost regulacije afektivni stav rije je o odgoju, a ako je
zadana vrijednost kognitivni stav rije je o izobrazbi. To dvoje predstavlja proces u kojem se
uenici vode prema zadanom cilju uz stalnu korekciju, dakle, upravljanjem njihovog
ponaanja. To upravljanje jo naziva i management ponaanja. Pri tom procesu potrebno je
uvijek djelovati jer su uenici stalno podloni vanjskim utjecajima.. Budui se u kibernetici
proces voenja prema nekom cilju, uz potrebne korekcije, zove i regulacijom, on ovakav
proces u obrazovanju opisuje regulacijskim krugom (slika 5.) . Elementi ovog procesa su
sljedei: cilj koji je zadan i kojem teimo zove se odgojni cilj, a razlikujemo odgojne ciljeve i

ciljeve izobrazbe; regulator je uitelj strateg koji djeluje po zadanoj strategiji (planiranom
obrazovnom procesu); izvrni lanci su osobni ili tehniki mediji koji slue provoenju
strategije; mjerna osjetila su elementi kontrole uenja koji nam pomau pri mjerenju stadija
uenja ukoliko nisu zadovoljavajui zapoinjemo novi proces upravljanja; regulacijski krug
odgoja i izobrazbe je funkcionalna shema koja povezuje sve ove elemente.

Zadana vrijednost
Obrazovni cilj

Regulator:
nastavnik kao planer

Odgojna strategija
(obrazovna strategija)

Stvarna vrijednost

Izvrni lanak
osobe,
mediji
Mjerno osjetilo;
Kontrola uenja

Upravljana
veliina:
adresat
upravljanje

Reakcije adresata

Poremeajne veliine (unutarnji i vanjski utjecaji)

slika 5. Prikaz regulacijskog kruga [2]

Uz primjenu ovog didaktikog modela nastava se planira kroz tri koraka:


a) Razvijanje strategije kao planiranje raznovrsnih mjera koje se moraju provesti
da bi se postigao odreeni obrazovni cilj.
b) Planiranje prikladne upotrebe medija mediji su u ovom sluaju znakovni
sustavi koji slue za kodiranje obavijesti; moemo ih podijeliti na analogne i
digitalne, personalne i tehnike, ikone simbole i t.d. Oni su veoma vani u svim
podrujima komunikacije.

10

c) Odreivanje didaktikih postaja to je odreivanje kontrolnih postaja kao


zadanih toaka utvrene obrazovne strategije; to su ujedno i povratne veze koje
slue za utvrivanje stvarnih vrijednosti regulacijskih operacija.
S druge strane, Felix von Cube se bavio i primjenom pojma znanosti na fenomen odgoja s
aspekta kritikog racionalizma. On smatra da su obrazovni ciljevi subjektivni zahtjevi,
dakle, nisu ni istiniti ni pogreni. Tako, znanost o odgoju moe imati dva podruja
istraivanja: istraivanje ve zadanih obrazovnih ciljeva i optimizacija ve zadanih ciljeva
po razliitim kategorijama (npr. vremena ili ekonominosti). Da bi se svi ti ciljevi na
najbolji mogui nain provodili, potrebno je razvijati i optimizirati odreene strategije, to
je konstruktivnog karaktera. Obrazovna se strategija ostvaruje i pomou medija, pa
sveukupno djelotvorno provoenje strategija pretpostavlja regulacijsko djelovanje i metoda
i medija.
U primjeni kibernetikih metoda na odgoj i izobrazbu razlikuju se tri glavna podruja: opis
odgoja kao upravljanja, primjena informacijskih metoda u teoriji uenja i didaktici, te
programiranje povratno povezanih obrazovnih sustava.
Ova je teorija optimalna za strukturiranje udbenika i nastavnih sadraja

1.1.4 Christine MllerDIDAKTIKA KAO TEORIJA KURIKULUMA


Christine Mller je postavila principe didaktike kao teorije kurikuluma ili ciljnog usmjerenog
pristupa.
Kurikulum kao plan za odvijanje nastavnih jedinica koji mora sadravati iskaze o ciljevima,
organizaciji i kontroli uenja. Slui i uenicima i uiteljima za optimalno ostvarivanje uenja.
Budui su ciljevi uenja bitna odrednica didaktikog pristupa, tako ovaj model naziva jo i
ciljno usmjerenim pristupom.
Po ovoj teoriji kurikulum se razvija kroz tri meusobno povezana procesa (slika 6), a to su:
1.

Planiranje Najprije se odreuju ciljevi nastavne jedinice

2.

Organizacija planiraju se najpovoljnije strategije za ostvarivanje ciljeva

3.

Kontrola uenja odreuju se kontrolni postupci kojima se provjerava jesu li postignuti

zadani ciljevi i jesu li odabrane optimalne strategije, tj. Je li od uenika U postao uenik U'.

11

Planiranje
Zadano ponaanje

U uenik na
poetku procesa
uenja
U' uenik na
kraju procesa
uenja

Kontrola uenja
Stvarno ponaanje

KU korak u
uenju
U'
KU6

KU5
KU4

Zadano
ponaanje

U
KU3

KU2

stvarno ponaanje

KU1

Organizacija uenja

slika 6. Prikaz razvijanja kurikuluma kroz procese planiranja, organizacije i kontrole uenja. [2]

Osnovne odrednice planiranja nastave u skladu s ovim pristupom su sljedee:


1)

prikupljanje ciljeva uenja

2)

opisivanje ciljeva uenja

3)

rasporeivanje ciljeva

4)

odluivanje za ciljeve

5)

proizvod procesa planiranja uenja

Promatrajui jedan konkretan primjer, kroz jednu nastavnu temu, moemo analizirati ove
odrednice: nastavna tema brojevni sustavi
1. Ciljevi uenja podsjetiti uenike na brojevne sustave koje poznaju do sada i
upuivanje u druge brojevne sustave, kao i njihova namjena.
2. Opisivanje ciljeva zadatak nam je objasniti uenicima gdje se koriste ti brojevni
sustavi.

12

3. Rasporeivanje ciljeva Pokazujemo sustave s razliitim bazama, pokazujemo naine


pretvaranja u zadane brojevne sustave, zatim za cilj imamo podrobnije upoznavanje sa
binarnim, oktalnim i heksadecimalnim sustavom. Jedan od ciljeva je i nauiti uenike
osnovnim raunskim operacijama u tim sustavima.
4. Odluivanje za ciljeve ovo je najvaniji korak u planiranju; iz svih prikupljenih i
klasificiranih ciljeva biramo one koje treba ostvariti u planiranoj nastavnoj jedinici.
Budui ne raspolaemo s previe vremena za uenje pozicioniramo ove ciljeve po
vanosti primjenjujui kriterije valjanosti. Najvie vremena posveujemo binarnom,
oktalnom i heksadecimalnom sustavu, a manje vremena ostalim sustavima.
5. Proizvod procesa planiranja uenja Kada smo zavrili planiranje nastave, dobijemo
niz preciznih ciljeva uenja koji nam pomau u procesu organizacije uenja. Dakle,
isplanirali smo nastavne jedinice i pristupamo njihovoj realizaciji korak po korak.

Ako uenje organiziramo prema ciljno usmjerenom pristupu postoji niz koraka pomou kojih
e uenici ostvariti postavljene im ciljeve:
1)

opis nastavnih metoda pretpostavlja opis puta do nekog cilja, a odnosi se na

aktivnosti i uitelja i uenika, te njihova meusobna komunikacija


2)

klasifikacija nastavnih metoda po ciljevima uenja, po ponaanju, po

obiljejima uitelja i uenika, tj. Viedimenzionalna klasifikacija


3)

izbor nastavnih metoda odnose se na fazu odluivanja, odnosno na zadane

ciljeve uenja, a uzimaju u obzir razliitosti svakog uenika, to znai da za svakog


uenika nije primjerena ista metoda.
4)

produkt procesa organizacije uenja kada smo izvrili opis svih nastavnih

metoda, klasificirali ih te odabrali najprimjerenije, tada zakljuujemo proces


organizacije uenja te povezujemo ciljeve uenja s uenicima.
Sljedei korak potreban za kontrolu uenja, prema ciljno usmjerenom pristupu, sastoji se od
provjere jesu li uenici ovakvom organizacijom uenja postigli zadane ciljeve, a to postiemo:
1)

Testiranjem, da se vidi jesu li uenici savladali zadane ciljeve, zatim

2)

Implementacijom ciljno usmjerenih testova i zadataka, te

3)

Analizom da se vidi valjanost sadraja i zadataka, te

4)

Vrednovanjem postignutih rezultata

13

Prednosti ciljno usmjerenog pristupa su u :


1) Transparentnosti to znai da su ciljevi otvoreni, te da ih svi razumiju.
2) Provjerljivosti da odluke u toku nastave mogu biti provjerene i vrednovane.
3) Sudjelovanju ukljuenih osoba da i uenici i uitelji i roditelji sudjeluju u procesu
planiranja uenja
4) Djelotvornosti konkretno opisani ciljevi uenja pomau boljoj kontroli uenja.
Ova je teorija optimalna za fazu provjere ispunjenja ciljeva

1.1.5 Rainer WinkelDIDAKTIKA KAO KRITIKA TEORIJA NASTAVNE


KOMUNIKACIJE
Predstavnici ove teorije smatraju da je didaktika teorija pouavanja prakse koja je u mnogo
emu sloenija i tea. Pouavati se moe i bez plana, kao npr. Kad majka ui dijete jedan jezik,
neku igru, kako jesti, piti i sl. Ali prilikom pouavanja ne moemo ostati samo na neplanskom
pouavanju jer bi to vodilo stihiji. Budui je kola mjesto gdje se planski pouava, to
pouavanje se zasniva i na komunikaciji meu ljudima. Da bismo uspostavili razumljivost u
komunikaciji potrebno je planirati uenje i pouavanje.
Po ovoj teoriji zadatak nastave je utvrivanje stvarnih vrijednosti, a to se ostvaruje kritikom
analizom stvarne nastave pomou empirijskih metoda sa 4 razliita aspekta. Iz takve kritike
analize se razvijaju koraci planiranja koji moraju biti razumljivi uenicima, uiteljima i
roditeljima. Ova teorija eli ustanoviti zakone i planove nastavnih procesa i kritiki ih
upotrijebiti za stalno poboljanje nastave.
Nastavni procesi usmjereni su na:
9. Aspekte posredovanja to su svi edukativni postupci i nastavne metode, te artikulacija
nastave
10. Aspekte sadraja obuhvaaju ono to se obrauje u nastavi i to kroz tri razine
programa: kroz strategiju idealnih programa, kroz strategiju slubenih programa i kroz
strategiju skrivenih programa, a sve to jo kroz tri stupnja suoavanja: uspostavljanje
odnosa, shvaanje i integraciju.
11. Aspekte strukture odnosa sadravaju uenje i pouavanje u odreenim odnosima, pa
tako razlikujemo elemente socijalne interakcije ( to je pruanje uputa i pomoi),
smjerove (veze usmjeravane uiteljem ili uenikom), te oblike (komunikativne i
nevezane)
14

12. Aspekt koji nastavu analizira sa stajalita poremeaja odnosi se na vrste poremeaja
(to su razliite smetnje koje utjeu na uenje i pouavanje), na odreivanje prisutnosti
poremeaja, na smjerove poremeaja, na posljedice i uzroke smetnji. (Slika 7.)
Kroz kritiku teoriju nastavne komunikacije nastavu moemo planirati na sljedei nain:
1) Trostruko planiranje nastave kroz organizaciju, razne oblike posredovanja, te
situacije s rjeenjima.
2) Svaki nastavni sat sastoji se od niza procesa poduavanja i uenja
3) Ciljevi se pojavljuju jednom, i to tako da prelaze granice pojedinih predmeta
4) Pojedine situacije s rjeenjima kroz nastavni sat odnose se na 3 vrste ciljeva:
a. zatvoreni ciljevi poznati ciljevi
b. poluotvoreni ciljevi nisu nam uvijek dostini
c. otvoreni ciljevi ne moemo ih zadati unaprijed
5) Planiranje i analiza nastave u realizaciji zajedno ine neprekidni proces

aspekt posredovanja
1

poremeajni
aspekt

nastavni
procesi

sadrajni aspekt

3
aspekt odnosa

slika 7. Prikaz nastave u kritiko komunikativnoj didaktici.. [2]

Ova je teorija optimalna za razmatranje utjecaja realnih problema na nastavu.

15

1.2 Motivacija i stilovi uenja i pouavanja


Informatiku, kao relativno mladu nauku, pouavamo, ne preko didaktikog trokuta (ueniknastavnik-nastavni sadraji), ve preko didaktikog etverokuta: nastavnik uenik nastavni
sadraji nastavna tehnika. (Slika 8.)
Nastavnik

Nastavna tehnika

Didaktiki
etverokut

Uenik

Nastavni sadraji

slika 8. Didaktiki etverokut. [18]

Komunikacija na relaciji nastavnik - uenik proirena je i nastavnom tehnikom - raunalima,


bez koje i ne bi bilo mogue kvalitetno realizirati nastavu informatike.
I uenje i pouavanje su dva uzajamno povezana procesa, te je uspjenost i jednoga i drugoga
meusobno zavisna.
U tom procesu motiviranost uenika veoma je vana. Motivacija je proces koji je odgovoran za
jainu, usmjerenje i upornost nastojanja pojedinca za postizanjem cilja. Tada je i misaoni napor
pojedinca vei, kao i njegova misaona aktivnost, pa su i rezultati vei i bolji. U tom procesu,
djelovanje uitelja je veoma vana komponenta povezana sa postignuima uenika. Prilikom
ostvarivanja ciljeva nastave postoji niz aktivnosti koje moemo primijeniti da bismo poveali
motivaciju u razredu, a one se mogu svrstati u dvije kategorije: intrinzine (unutranje) i
ekstrinzine (vanjske) motivacije.
- Unutranji motivi su openito radoznalost i elja za stjecanjem znanja, te stalna elja
ljudskog duha za otkrivanjem. Nastavnik treba utjecati na unutranju motivaciju tako da
objasni zato je usvajanje odreenog gradiva vano, treba odrati i stvoriti znatielju,
omoguiti razliite aktivnosti i poticaje, odraivati igre simulacije, postaviti ciljeve uenja,
povezati uenje i potrebe uenika i pomoi uenicima prilikom razvijanja plana djelovanja.
- Vanjski izvori motivacije za uenika su kolska ocjena, pohvala, nagrada i sl. Motivatori
dolaze izvana. Nastavnik moe utjecati na vanjsku motivaciju tako da predstavi ueniku jasna
oekivanja, da prui tonu potporu, omogui neki vid nagrade i te nagrade uini dostupnima.

16

Za postizanje to boljeg uspjeha i to veeg stupnja znanja veoma je vana i radna klima.
Preduvjet dobre radne klime je uspjena emocionalna klima, a ona se postie poticajnim
pozitivnim osjeajima kao to su oputenost, ugodnost, radost, smijeh i sl.
Nastavnik je taj koji treba graditi takvo poticajnu i ugodnu radnu atmosferu, te poticati uenike
u njihovom radu. Njegove su uloge u odgojno obrazovnom procesu vrlo bitne, te je potrebno
da je, osim struan u svom predmetu, ujedno i dobar didaktiar, predava, dijagnostiar,
instruktor aktivne nastave te graditelj pozitivne emocionalne klime.
S druge strane, uenici i ue na razliite naine, pa tako po stilovima uenja razlikujemo tri
osnovna stila:
To su: vizualni stil uenja
auditivni stil uenja
kinestetiki stil uenja
- Vizualni tipovi imaju sljedee karakteristike: moraju vidjeti da bi zapamtili, vie vole
ilustracije, dobro biljee predavanja, uredni su i organizirani, brzo priaju, dugorono planiraju,
uoavaju detalje, pamte pomou vidnih asocijacija, ne ometa ih buka, vole itati, dobri su
itai, araju za vrijeme telefonskih razgovora, esto znaju to bi rekli, ali tee pronalaze rijei,
mirniji su po prirodi.
- Auditivni tipovi moraju uti da bi zapamtili, preferiraju sluanje, pa se ponekad izgube kad
moraju zapisati, ometa ih buka, vole itati na glas, detaljni su u opisima, rukopis im je obino
ruan, otvorene su i komunikativne osobe
- Kinestetiki tipovi daju prednost manipulaciji materijalom i grupnoj dinamici, najbolje pamte
izvodei odreeni pokret, dobro reagiraju na fizike nagrade, dodiruju ljude da bi privukli
njihovu pozornost, ne uivaju u itanju, koriste mimiku, mau rukama, imaju neitak rukopis,
dobro se orijentiraju u prostoru, rado ue pomou raunala, vrlo su otvorene osobe
Stilovi uenja po Davidu Kolbu: (Ameriki metodiar i pedagog roen 1939.g.)
- Aktivisti uivaju u stjecanju novih iskustava. Ue kroz eksperiment i aktivno sudjeluju u
procesu uenja. Manje ih zanima to se dogodilo u prolosti, primarno ih zanima to se dogaa
upravo sada i ovdje. Vole "misliti u hodu", uiti u kraim intervalima. Vole sudjelovati i
zabavljati se.
- Mislioci (reflektori) u mislima reflektiraju informacije prije akcije. Ue iz tuih iskustava.
Ne vole da ih se pouruje. Vole temeljitu pripremu, istraivanje i procjenjivanje, te donoenje
odluka kada to njima odgovara.
17

- Teoretiari Istrauju promiljeno. esto postavljaju pitanja. Veoma su analitini.


Primjenjuju svoje vlastite modele. Vole vidjeti kako se stvari slau u cjelinu. Vole koncepte i
modele. Vole osjetiti intelektualni izazov, te strukturu i jasne ciljeve. Vole loginu prezentaciju
ideja.
- Pragmatiari Ne vole teoriju, vole konkretna praktina rjeenja, dakle, vole vidjeti kako
stvari funkcioniraju u praksi. Vole eksperimentirati s novim idejama; praktini su, vole
rjeavati probleme. Vole vidjeti vanost svoga rada.
I motivacija i stilovi uenja su kod svakog uenika razliiti, pa su samim tim i nastavne
metode prilagoene razliitim stilovima uenja. To ne znai da bi trebalo podrediti pouavanje
odreenom stilu uenja uenika, ve bi nastavu trebalo organizirati tako da razvijamo kod
uenika i alternativne stilove uenja.

1.3 Modeli planiranja nastave


Organizacija nastave informatike je postupak kojim razliite faktore povezujemo u cjelinu radi
ostvarenja eljenog cilja, a to je kvalitetan sat informatike. Nastavu planiramo na osnovu plana
i programa, zadanih tema i njihova redoslijeda, a u skladu sa kurikulumom predmeta.
Najpoznatiji modeli planiranja nastave su sljedei:

1.3.1 Taylerov model planiranja


Tayler tvrdi da postoje etiri naela koje tvorci kurikuluma moraju uzeti u obzir:
1. Utvrivanje obrazovnih ciljeva dakle, treba uzeti u obzir zahtjeve drutva i miljenja
strunjaka.
2. Izbor nastavnog sadraja i aktivnosti treba ukljuiti sadraje koji e biti korisni za
ostvarenje ciljeva.
3. Organiziranje nastave nastavu treba organizirati tako da se sadraji nadovezuju jedan na
drugoga, a da obrauju glavne pojmove.
4. Vrednovanje djelotvornosti nastavnih sredstava tu je potrebno vidjeti je li nastavno
sredstvo proizvelo eljeni cilj.
Prednost ovoga modela je njegova loginost. Kada odluimo to elimo pouavati, onda
biramo i organiziramo nastavne sadraje i aktivnosti.
Nedostatak ovoga modela oituje se u prenaglaenosti mjerljivih rezultata.

18

1.3.2 Walkerov model planiranja


Ovaj model naglaava razgovor i meusobni dogovor lanova tima za planiranje nastave.
Postupci ovoga modela su sljedei:
1. Platforma To je prvi korak planiranja gdje su svi pojedinci ukljueni u posao izrade
kurikuluma. Svi iznose svoje zamisli i opaanja. To je ujedno i najvei nedostatak ovoga
modela, jer ova faza planiranja oduzima previe vremena.
2. Promiljanje U ovoj fazi pronalaze se najbolja rjeenja za ostvarivanje zacrtanih ciljeva.
3. Nacrt Ovo je zavrna faza i sastoji se od rasprava nakon pronalaenja rjeenja (eksplicitni
nacrt), a nakon toga slijedi implicitni nacrt koji podrazumijeva poduzimanje planiranih radnji.

1.3.3 Model akcijskog istraivanja


Ovo bi bio model koji sistematino procjenjuje ono to se deava u razredu, kako bi se
popravilo stanje. Ovaj se model provodi kroz etiri temeljna procesa:
1. Izrada plana, kako bi se popravilo ono to je ve u toku
2. Provoenje plana
3. Promatranje efekata provedenog plana
4. Razmiljanje o tim efektima
Prednosti ovog modela su u tome to pogoduje boljoj nastavnoj praksi, a nastavniku prua
mogunost eksperimentiranja, a nedostatak je u riziku koji on nosi, te ogranienju provoenja
plana u djelo.
Svi ovi modeli planiranja nastave imaju svoje i dobre i loe strane, pa bi bilo najbolje
primijeniti ono najbolje od svakoga, kako bi smo na najbolji mogui nain realizirali nastavu
po zadanom planu i programu.

19

2 OSNOVNI DIDAKTIKI KONCEPTI

Prouavajui osnovne didaktike koncepte modele pouavanja, vidimo da oni nastoje


generalizirati pojedinano, i pri planiranju i realizaciji nastave, te provjeriti ostvarenost zadanih
ciljeva. Ujedno nastoje otkloniti nedostatke suvremene kole.
U skladu s onim to poduavamo, te izborom didaktikog koncepta, odluujemo se, metodiki,
za najprikladniji model pouavanja.
Herbert Gudjons definira sljedee modele poduavanja:
-

otvorena nastava,

projektna nastava,

nastava okrenuta iskustvu,

praktino uenje,

nastava okrenuta djelovanju,

otkrivajue uenje ,

problemska nastava,

nastava aktivnog uenika,

generiko uenje i

gestalt pedagogija

Otvorena nastava Ima teorijski oslonac u kibernetikim misaonim mreama, a zahtijeva


razrede radionikog tipa opremljene za pojedinani i grupni rad. Organizacija joj je fleksibilna,
ima manje frontalnog rada. Svaki nastavnik sam izrauje dnevne i tjedne planove, te treba sam
razraditi nastavni proces. Uobiajeno je, kod ovog modela nastave, da na kraju tjedna u
razgovoru s uenicima provjerava razumijevanje nauenog gradiva. Ovakva se forma moe
koristiti i kod strukturirano modularne nastave.
Projektna nastava je oblik nastave koji kroz rad i kroz uenje obrauje postavljene zadatke,
a u svemu tome uzima u obzir tekoe samoplaniranja i odgovornost uenika. Ona daje veliko
znaenje upotrebnoj vrijednosti proizvoda u odnosu na razvoj intelektualnih sposobnosti
projektiranja u realnim situacijama. Ishodite projektne nastave je u definiranju stvarnog
problema prikladnog za stjecanje iskustva. To iskustvo treba biti praktino i drutveno vano, a
ujedno i zanimljivo uenicima. Uitelj i uenici zajedno izrauju plan, a uitelj ih savjetuje i
pomae im voditi projekt do cilja. Smatra se da kada se uenici suoe sa zadanim problemom,
to potie njihovu kreativnost, hrabri ih se u iznoenju ideja, postupaka i sl. Ideja projektne
20

nastave ukljuena je u procese strukturirano modularnog oblikovanja nastave., koji naglaava


sposobnost primjene znanja , a od uenika trai to veu i to dugotrajniju aktivnost.
Nastava okrenuta iskustvu - Moderna teorija nastave okrenute iskustvu temelji se na
filozofiji Johna Deweya za kojega je iskustvo kljuni pojam, pa tako on vjeruje da je
suvremeno obrazovanje neuspjeno jer zanemaruje osnovne principe kole. Smatra se da je
kola mjesto gdje se trebaju nauiti odreene lekcije i usvojiti odreene informacije, te
formirati odreene navike.
Suvremeni model iskustvenog uenja razradio je David Kolb. Za njega je uenje proces u
kojem se znanje stvara putem transformiranja iskustva, a uenje se ostvaruje kritikim
promiljanjem iskustva. On smatra da se uenje odvija kroz ciklinu izmjenu etiri etape:
konkretnog iskustva, refleksivnog promatranja, apstraktne konceptualizacije i aktivnog
eksperimentiranja. Proces uenja moe zapoeti od bilo koje etape, ali je bitno proi cijeli
ciklus. (slika 9.)

Etape ciklusa uenja prema Davidu Kolbu


konkretno
iskustvo

Provjeravamo
postavljene hipoteze i
stvaramo novo
iskustvo.

aktivno
eksperimentiranje

refleksivno
promatranje

Preispitujemo
konkretno
iskustvo.

apstraktna
konceptualizacija

Pokuavamo dati odgovore i


postaviti hipoteze.

slika 9. Etape ciklusa uenja prema Davidu Kolbu.

U nastavi okrenutoj iskustvu uenje predstavlja proces, a ne rezultat. Ono nikada ne poinje od
poetka, nego se zasniva na uenikim prethodnim iskustvima i idejama koje se povezuju s
21

novim idejama. Tako, uenje predstavlja rjeavanje sukoba izmeu razliitih suprotstavljenih
pristupa, jer bi konflikti i neslaganja trebali djelovati poticajno na uenje.
Uenje nije samo kognitivni proces, ve je ono obuhvaa sve vane funkcije, kao to su:
miljenje, osjeaje, opaanje i djelovanje. Uenje je rezultat meudjelovanja osobe i okoline,
gdje se nova iskustva prilagoavaju postojeim konceptima.
Praktino pouavanje zasniva se na ideji vrste povezanosti misaonog i praktinog rada.
Ovakav oblik pouavanja i uenja ima sekundarno obrazovno znaenje. Ovaj model ukljuuje
unutranju motivaciju, odvija se na praktinim problemima, a zahtijeva kritiko i kreativno
miljenje. Praktino se pouavanje odvija kroz etiri faze:
-

identifikacija praktinog problema

praktino razmiljanje

akcija

osmiljavanje

Nastava okrenuta djelovanju Uenikove aktivnosti su u sreditu procesa uenja, a umni i


runi rad su nerazdvojni elementi nastavnog procesa. Uenici mogu uiti ne samo glavom,
nego itavim tijelom. Ovakva nastava je potpuna sadrajno i metodiki, aktivna poveava
se uenikova aktivnost, u centru joj je proizvodnja, polazna je toka uenikov subjektivni
interes, uenik sudjeluje u planiranju, vodi otvorenoj koli, dovodi u pravi odnos umni i fiziki
rad. Osnovne karakteristike ovog modela nastave su:
-

Ona je u potpunosti sadrajna i metodiki ispravna

Aktivna je ,jer se poveava aktivnost uenika, a smanjuje uitelja

U sreditu joj je proizvod rada

Polazite joj je u uenikovom subjektivnom interesu

Uenik sudjeluje u planiranju

Ovakva metoda nastave vodi otvorenoj koli

Umni i fiziki rad postavlja u pravi omjer

Otkrivajue pouavanje - heuristika nastava zasniva se na Brunerovoj kognitivnoj


psihologiji. Ovakvo pouavanje poveava unutranju motivaciju i razvija stil koji je kasnije
vrlo koristan za pamenje nauenog gradiva. Ovo nije sinonim za induktivnu nastavu, jer
ukljuuje u sebi i dedukciju. Ovom se metodom uenici osposobljavaju da otkrivaju znanje i
ranije, prije nego im se ono osigura. Na ovaj nain doputeno je i uenje na vlastitim grekama.
22

Generiko pouavanje . Ne usvaja se gotov proizvod, ve se obrauje tema kao proces


nastajanja rjeenja. Uenici se mogu koristiti gotovim materijalima ili rezultatima nekih drugih
uenika. Uenici nisu samo pasivni primatelji stimulansa i uenje ne slijedi automatizmom
ako im se osigura poticaj. Sva odgovornost uenja lei na ueniku koji e povezati postojee
znanje i sposobnosti sa novo nauenim. Najvanija odrednica ovog pouavanja je generiranje
veza izmeu odabranih ulaza i memoriranih znanja za koja uenici smatraju da su vana.

Gestalt pedagogija - Ona je emocionalno naglaena i orijentira se na sam doivljaj teme


pouavanja. Pretpostavlja se da pozitivan emocionalni odnos prema temi pouavanja djeluje
kao poticaj na uenika.

2.1

Problemska nastava

Problemska nastava Prilikom pouavanja nastavnog predmeta informatika, koje u sebi


sadri gradivo iz podruja komunikacijsko informacijske tehnologije ICT (Information and
Communication Tehnology) i raunarstva (Computing), potrebno je primijeniti najpovoljniju
metodu u skladu s onim to se izlae a to znai omoguiti uenicima da na najkvalitetniji nain
usvoje to znanje. Treba koristiti nastavne metode koje osiguravaju uenicima to dublju i to
dugotrajniju aktivnost. Jedna od takvih metoda je i problemska nastava. Njen nivo je odreen
stupnjem znanja i angairanja uenika u rjeavanju zadanih problema. Ukoliko to nije
usklaeno moglo bi doi do loijih rezultata, pa ak i odbojnosti.
Problemska se nastava realizira kroz tri osnovna koraka:
Prvi korak problemske nastave je poetni korak - problemsko izlaganje od strane uitelja, gdje
on postavlja i rjeava neki ogledni problem onako kako se to radi. Nakon toga zadaje
problemsku situaciju uenicima, te ga zajedno formuliraju i ralanjuju na manje jedinice
putem dijaloga. To je ujedno i iskustveno uenje u okviru kojega dolazi do izraaja i
kreativnost i suradnja, navala ideja, te raznih alternativa , a veoma vana komponenta je i
odgovornost odluivanja.
Drugi korak predstavlja rjeavanje problema od strane uenika, na osnovi postojeeg iskustva
i prethodno steenih znanja. Oni sastavljaju problemski prostor na temelju informacija s kojima
raspolau, a to su: upute, dugorono pamenje, znanje i podaci prikupljeni prilikom rjeavanja.

23

Kroz ovaj korak oni postavljaju hipoteze, odreuju to se promatra, a nakon prikupljanja bitnih
podataka vre verifikaciju svojih hipoteza.
Trei korak predstavlja zakljuak koji proizlazi iz prethodna dva koraka. Ovdje je vano
naglasiti da kod donoenja zakljuaka ono to uitelj vidi kao jasan i oigledan zakljuak ne
znai da to isto vidi i uenik. Svatko upravlja svojim miljenjem, pa je konano rjeenje
problema intelektualni zajedniki proizvod poetnika i strunjaka. Ono je odgovor na
problemsko pitanje i verifikacija postavljene hipoteze.
U praksi moemo, s pedagokog i metodikog aspekta, problemski orijentiranu nastavu
realizirati na vie naina, a zavisno i od toga to izlaemo.
Potrebno je povezati sve dijelove, sa polaznom idejom, te uspostaviti to ire i to raznolikije
veze.
Zadatak uitelja je prvenstveno ralanjivanje i generalizacija, zatim usporeivanje pojava i
procesa, te poticanje stjecanja samostalnih saznanja primjenjujui i induktivni i deduktivni put.
Iz psihologije obrazovanja poznato je da predavanje mora biti sustavno, pregledno i ne
predugo, jer mu u suprotnom opada efikasnost.
Prema nekim istraivanjima (Love 1983.) mozak funkcionira kroz tri koraka : traenje i
predstavljanje konteksta, sreivanje detalja i informacija, te donoenje odluke, evaluaciju i
zakljuivanje.
U skladu s tim ponekad dobro postavljeno pitanje uenicima moe pobuditi ueniku znatielju
i potaknuti ih na rjeavanje problema, bolje nego opirno objanjavanje nastavnika.
Neka istraivanja su pokazala da se najbolje ue sadraji sa poetka i kraja predavanja, pa je
tako potrebno sredinu predavanja uiniti zanimljivom. Trebalo bi i izbjegavati davanje gotovih
odgovora, pri tome uvaavati razlike u tempu usvajanja gradiva i irini gradiva.
U problemski orijentiranoj nastavi zahtijeva se visoki stupanj primjene znanja, a od uenika se
trai to vea aktivnost i angairanost, ukljuuje se primjena koritenja poznatih algoritama za
rjeavanje problema u skladu s njihovim znanjima i sposobnostima.
U suprotnom bi moglo imati obrnuti efekt.
Da bi se zadatak uspjeno rijeio potrebna je poveana aktivnost. U sluaju sloenijeg
problema, problem se ralanjuje u vie uzajamno povezanih faza, tako da se, rjeavajui
redom, problem rjeava postupno korak po korak.

24

Didaktike vrijednosti ovakvog naina pouavanja oituju se u tome to se pretpostavlja


odsustvo klasine predavake nastave, jer je prisutna vjera u snage i mogunosti uenika.
Uenici ravnopravno sudjeluju u postavkama i rjeavanju problema, pa je s te strane prisutan i
demokratski kontekst. Na ovaj nain pokuava se u to veoj mjeri osloboditi sve potencijale
uenika.
Ovakav nain pouavanja je, u ovakvom obliku, primjenjiv na programiranje u nekim
specifinim oblicima.

2.2

Programirana nastava

Programirana nastava - koju danas primjenjujemo, pojavila se dvadesetih godina prolog


stoljea u SAD-u i SSSR-u. U njenoj osnovi nalaze se ideje heuristike nastave koje ine
racionalni proces voenja uenja. Ona proizlazi i iz zahtjeva dananjeg drutva u kojem je
vrijeme veoma vaan faktor. Danas se trai velika koliina informacija i veliko znanje, pa u
skladu s tim treba razviti takav nastavni proces koji uenicima nudi veliku koliinu informacija
za to krae vrijeme.
Poseban pokret programirane nastave pokrenuo je B.F.Skinner1 [20], 1954 takoer u SAD u.
Cilj je bio omoguiti takav nastavni proces kod kojeg e uenici korak po korak, u skladu sa
svojim predznanjem, samostalno napredovati do cjelovitog znanja. Ovakav oblik nastave
pretpostavlja koritenje tehnike koja e simulirati izvoenje nastave jedan na jedan (jedan
uenik - jedan uitelj). Uloga uitelja se mijenja i to iz one gdje je on prenosilac znanja do one
gdje je on taj koji sudjeluje u izradi programiranog materijala. Uenici tako samostalno ue
nastavno gradivo. Materijali su programirani tako da su obuhvaene manje cjeline, pa uenici
po njima individualno ue nastavno gradivo. Svaki uenik po njima moe samostalno uiti.
Nastavno gradivo je podijeljeno u manje cjeline, a svaka manja cjelina se sastoji od
informacije. Uenici dobivaju informaciju, dobiju zadatak, nakon toga na za to predvieno
mjesto, daju odgovore, te potom dobiju informaciju o uspjenosti rjeavanja zadatka.
Ovakvom metodom pouavanja potie se uenika samostalnost i snalaljivost. Uenik odmah
dobiva informaciju o tome je li pravilno rijeio zadatak i pohvalu ako je to uinio dobro. To
1

Burrhus Frederic Skinner (20.3.904 18.8.1990.) bio je Ameriki psiholog, filozof i didaktiar, biheviorist.

25

pojaava motivaciju i elju da se svaki zadatak dobro rijei. Na vii nivo rjeavanja zadataka ne
moe se prei ukoliko se nije uspjeno rijeilo ono prethodno.
Prednost ovakve metode pouavanja je u tome to svaki uenik, u skladu sa svojim
sposobnostima i brzini usvajanja gradiva, moe dalje napredovati. Nastavnik nadzire uenike i
daje upute, a po potrebi pomo. Nastava je na ovakav nain individualizirana tj. prilagoena
sposobnostima svakog pojedinca.
Da bi to bilo izvedivo stvaraju se programirani udbenici pomou kojih je mogue samostalno
uiti putem raunala ili on-line.
Nedostatci ove metode pouavanja ogledaju se tome to je smanjena odgojna komponenta,
koncentracija moe popustiti, pa se neka znanja mogu usvojiti povrno. Priprema nastavnika je
vrlo zahtjevna, a materijali za ovakvu nastavu moraju biti veoma dobro i kvalitetno
pripremljeni. Najee su u upotrebi dva modela ovakvog izvoenja nastave: linearni i
razgranati.
Linearni model je potpuno definiran redoslijedom, dok razgranati model omoguuje
preskakanje nekih nastavnih jedinica ukoliko je uenik neto brzo usvojio. Postoji jo
adaptivno pouavanje, algoritmiko generiranje upita, razne simulacije, nadzori odreenih
procesa uenja itd.
Danas je ovakav vid obrazovanja veoma pogodan za obrazovanje na daljinu. (npr. Uenici u
udaljenim i izoliranim krajevima, i slabo naseljenim podrujima i otocima)
E uenje ili obrazovanje je izvoenje obrazovanja pomou raunala, te informacijske i
komunikacijske tehnologije.Razlikujemo sinkrono e-uenje (istovremena prisutnost uitelja i
uenika) i asinhrono uenje (Uz pomo Interneta dostupno bilo kada; uenik i uitelj ne
moraju istovremeno komunicirati). Danas ovakve oblike uenja primjenjujemo kod razliitih
vrsta poduka, uz prirunike (npr. ECDL kurs kroz 7 modula razliitih nivoa), razne obrazovne
igre, modeliranje i simulaciju, multimediju i sl.

Pedagoke i didaktike vrijednosti programirane nastave su brojne:


-

individualizacija rada i uenika samostalna aktivnost

motivacija uz pomo povratne informacije

sistematinost u uenju i napredovanju


26

2.3

racionalizacija procesa uenja

vei efekti obrazovnog rada

ekonominije iskoriteno vrijeme

savlaivanje najvanijih injenica

permanentna aktivnost uenika i dr.

Didaktiki pristupi programiranju istraivanja

Na mnogim fakultetima na kojima se pouava programiranje, iskustvom i analizama dolo se


do nekih openitih modela pouavanja. Pokazalo se da kod uenika postoje vei problemi
spajanja dijelova programa zajedno, nego uenje koncepata programskih jezika.
Tako su se istakla i usporedila tri najea didaktika modela[6]:
1.

Znakovna skala

2.

Sustav spoznajnih ciljeva

3.

Rjeavanje problema

2.3.1 Znakovna skala


Ovaj se pristup pouavanju programiranja, temelji na jezinoj podlozi raunskog alata:
programskim jezicima, jezicima modeliranja, formatiranju, formulama i pretraivakim
instrukcijama, koje su esto uklopljene u software-ske proizvode. Potrebno je najprije
poznavati sintaksu programskog jezika, pa se ona zato prvo i ui, da bi se nakon toga pristupilo
uenju konstrukcija programskog jezika. Tek nakon toga, slijedi koritenje programskog jezika
za konkretne primjene - pragmatika (slika10).

27

PRAGMATIKA
SEMANTIKA
SINTAKSA
slika 10. Model pouavanja Znakovna skala.

2.3.2 Sustav spoznajnih ciljeva


Ova strategija podsjea na Bloomov sustav spoznajnih ciljeva. Redoslijed je sljedei: Najprije
se koristi neka konkretna aplikacija, tj. pokree se program, zatim se ita program, pa se
mijenja program, a tek kao zavrni korak kreira se neki novi program. (Slika 11).

4.Kreiranje programa
3.Mijenjanje programa
2.itanje programa
1.Pokretanje programa
slika 11. Model pouavanja Sustav spoznajnih ciljeva.

2.3.3 Rjeavanje problema


Ovakav pristup programiranju predlau Rogalski i Samurcay, kao uenje programiranja kroz
rjeavanje problema. To je ustvari vie model uenja nego pouavanja. Model pouavanja bi
mogao biti ovakav pristup proiren korakom mijenjanja programa iz prethodnog pristupa.

28

Temeljem istraivanja dobiven je zakljuak da se niti jednom od ovih didaktikih modela ne


daje prednost u odnosu na druge, ve da se svi pomalo koriste.
Barnes, Fincher i Thompson (1997.) su razvili 4-stupanjski proces rjeavanja problema kojeg
su koristili u pouavanju CS i on u sebi ukljuuje:
-

razumijevanje

oblikovanje

pisanje

pregled

Ovaj je model slian kombinaciji prvog i drugog modela. On omoguuje da se uoe veze
uenja i pouavanja tj. veza ciljeva uenja s pouavanjem.
Konano se zakljuilo da studenti poinju uiti programiranje na etiri naina:
-

uenje programskog jezika

uenje pisanja programa u programskom jeziku

uenje rjeavanja problema u obliku programa

postajanje dijelom programske zajednice

Dok se ne poznaju dijelovi od kojih je program sastavljen i naini na koji se oni spajaju,
uenici ne mogu programirati. ( U poetku se javljaju superbug-ovi, zato jer koriste govorni
jezik pri pisanju koda.)
Iz toga moemo zakljuiti da je prvi korak u uenju programiranja prijelaz sa ljudskog naina
razmiljanja na uenje programskih koncepata.
Drugi problem predstavlja spajanje dijelova koda, pa prema tome nedostaje jo jedan korak
izmeu razumijevanja programskih koncepata i vjetine kodiranja.
Zbog to boljeg razumijevanja programa, te komunikacije i programera i korisnika predlae se
stepenasti model uenja programiranja. (Slika 12).
.

29

Ljudski nain razmiljanja

Programski koncepti

Specificiranje,kodiranje,testiranje

Komunikacija sa programerima

Komunikacija sa korisnicima

slika 12. Stepenasti Model pouavanja

U skladu sa saznanjima iz prethodnog dijela, rijeit emo nekoliko primjera problemski


orijentirane nastave, na vie naina i razliitih pristupa.

30

2.4 Primjeri problemski orijentirane i programirane nastave


2.4.1 Uvodni dio o programskom jeziku PASCAL [7]
Primjere problemski orijentirane i programirane nastave prikazat emo u programskom jeziku
PASCAL.
Programski jezik PASCAL pripada programskim jezicima III. generacije, tzv. proceduralnim
programskim jezicima. Pojavio se poetkom sedamdesetih godina prolog stoljea, a njegov
tvorac bio je Niklaus Wirth2. PASCAL je jednostavan strukturni jezik znaajan po tome to su
s njim, u programiranje, uvedeni koncepti jakih tipova podataka sa eksplicitnim definicijama,
te prebrojivi i strukturni tipovi podataka.
Sintaksa jezika opisuje se metajezicima i sintaksnim dijagramima. Metajezici sadravaju skup
jednostavnih pravila kojima se definira konstrukcija programskog jezika. Sintaksni dijagrami
predstavljaju imenovane usmjerene grafove i pomau generirati programsku konstrukciju.
Imaju jedan ulaz i jedan izlaz. Notacija proceduralnih jezika definirala se Bekusovom
Normalnom Formom (BNF) , koja se sastoji od konanog broja metalingvistikih formula.
Osnovne karakteristike PASCALA su:
1. Obavezno je deklarirati sve varijable koje se koriste u programu
2. "Rezervirane" rijei se ne mogu koristiti u druge svrhe
3. Standardni tipovi podataka su: realni (real), cjelobrojni (integer), logiki
(boolean), i znakovni (char)
4. Osim standardnih postoje sloeni (strukturirani ) tipovi podataka, a to su: nizovi
znakova (string), polja (array), slogovi(record), skupovi (set of), datoteke (file
of)
5. Procedure i funkcijski potprogrami mogu pozvati sami sebe (rekurzivno)

Niklaus E. Wirth (roen 15.02..1934.) je vicarski raunarlni znanstvenik, poznat po dizajniranju vie programskih jezika: Euler, Algol W,

Pascal, Modula, Modula-2 te Oberon. Godine 1994. dobio je Turingovu nagradu za razvijanje niza inovativnih raunalnih jezika.

31

2.4.2 PASCAL program


Osnovna struktura PASCAL programa
Program se sastoji od zaglavlja i bloka naredbi.

program ---; (*zaglavlje programa*)


uses ---;

(* najava upotrebe modula *)

label ---;

( *deklaracija labela *)

const ---;

(* deklaracija konstanti *)

type ---;

(* deklaracija tipova *)

var ---;

(* deklaracija varijabli *)

procedure ---; (* deklaracija procedura *)


(* deklaracija funkcija *)

begin

(* poetak bloka naredbi *)

naredbe;

end.

blok

naredbe

function ---;

Opis podataka

zaglavlje

(* kraj programa *)

Slika 13. Opi oblik programa u PASCALU [7]

Zaglavlje zapoinje rezerviranom rijei program . U bloku su sadrani dio za opis podataka i
dio za naredbe. Prilikom opisa podataka deklariramo sve ono to emo koristiti u programu.
Nakon deklaracije varijabli slijedi blok naredbi. On predstavlja pravi izvrni kod programa.
Poinje rezerviranom rijei begin, a zavrava sa end.
Primjer:
program vjezba;
var x,y,z: tip_podataka:
begin
32

naredba:1;
naredba_2;

naredba_n;
end.

2.4.2.1 Tipovi podataka


Tipovi podataka
Svaki podatak koji koristimo u programu mora biti unaprijed definiran. Podaci mogu biti npr.
Realni brojevi, cijeli brojevi, logike vrijednosti, znakovi i sl. Tako i operacije koje
primjenjujemo na podatke ovise o njihovom tipu.
Tipove podataka moemo podijeliti u tri osnovne grupe, a njih u jo neke podgrupe. Tako
imamo:
jednostavne tipove
standardni
cjelobrojni (integer)
realni (real)
znakovni (char)
logiki (boolean)
nabrojivi
intervalni
sloeni tipovi
skup (set)
niz, polje(array)
zapis, slog (record)
datoteka (file)
string
pokazivai
Nabrojivi i intervalni tipovi podataka su nestandardni jednostavni tipovi podataka koji
poboljavaju itljivost i razumljivost programa.
Jednostavni i sloeni tipovi podataka sadravaju vrijednosti objekata koje oznaavaju, dok
pokazivai sadre memorijske adrese objekata , na kojima su zapisane njihove vrijednosti.

33

Cjelobrojni tip - integer


Opi oblik deklaracije cjelobrojne varijable je:
var

ime_varijable : integer;

U zavisnosti od tipa raunala i Pascal prevodioca skup cjelobrojnih tipova moe se prikazati
slijedeom tablicom:
Tip podataka

Opseg

Broj bitova

integer

-32768 do 32767

16

shortint

-128 do 127

longint

-2147483648 do 2147483647

32

byte

0 .. 255

word

0 .. 65535

16

Slika 14. Proireni skup cjelobrojnih podataka u PASCALU [7]

Osnovne operacije nad skupom cjelobrojnih tipova podataka su:


-

zbrajanje +

oduzimanje -

mnoenje *

rezultat cjelobrojnog dijeljenja div

ostatak cjelobrojnog dijeljenja mod

Standardne funkcije koje kao rezultat daju cjelobrojnu vrijednost su: abs(i) apsolutna
vrijednost, sqr(i) kvadrat, succ(i) sljedbenik, pred(i) prethodnik, trunc(x) cijeli dio
realnog broja, round(x) zaokruuje x na najblii cijeli broj, random (i:word) generira
sluajni broj vei od nule ili jednak nuli ili manji od i.
Realni tip - real
Varijabla realnog tipa deklarira se na slijedei nain:
var

ime_varijable : real;

Proireni skup realnih tipova podataka predstavljen je u slijedeoj tablici:


Tip podataka

Opseg

Broj bajtova

real

2.9e-39..1.7e38

single

1.5e-45..3.4e38

34

double

5.0e-324..1.7e308

extended

3.4e-4932..1.1e4932

10

comp

-9.2e18-9.2e18

Slika 15. Proireni skup realnih tipova podataka u PASCALU [7]

Osnovne operacije nad skupom realnih tipova podataka su:


-

zbrajanje +

oduzimanje -

mnoenje *

dijeljenje /

Standardne funkcije koje kao rezultat daju realni tip podataka su: abs(x) apsolutna vrijednost,
sqr(x) kvadrat, sin(x), cos(x) trigonometrijske funkcije sinus i kosinus arctan(y) arkus
tangens, ln(x) prirodni logaritam, exp(x) - eksponencijalna funkcija ,sqrtn(x) drugi korijen
(x>0), int(x) daje cjelobrojni dio od x, frac(x) daje decimalni dio od x , random daje
realni broj vei ili jednak od 0, a manji od 1, pi sadri vrijednost .
Znakovni tip - char
Znak je element skupa slova abecede, razliitih simbola, brojki,i specijalnih znakova i
praznine. Niz znakova povezanih u jednu cjelinu zove se string.
Znakovni tip podataka u PASCALU je ureen skup dozvoljenih znakova.
Varijabla znakovnog tipa deklarira se na slijedei nain:
var

ime_varijable : char;

Znakovni tipovi podataka zauzimaju jedan bajt, a znakovne konstante piemo u jednostrukim
navodnicima, npr. 'a', '134', '*'.
Logiki tip - boolean
Podaci logikog tipa mogu poprimiti vrijednosti ili istina (true) ili la (false).
Varijabla logikog tipa deklarira se na slijedei nain:
var

ime_varijable : boolean;

Nad operandima logikog tipa moemo primijeniti slijedee logike operacije:

35

and konjunkcija

or disjunkcija

not negacija

Standardne funkcije koje kao rezultat daju logike vrijednosti su: odd(x) vraa vrijednost
true ako je x neparan, inae false, eof(x) true, ako je kraj datoteke, eoln(x) vraa vrijednost
true ako je kraj linije datoteke. Upotreba relacijskih operatora kao rezultat daje logiki tip
podataka:
-

<> razliito

< manje

> vee

<= manje ili jednako

>= vee ili jednako

2.4.2.2 Izrazi
Izraz je bilo koja kombinacija simbola koja izraunava neku vrijednost, a sastoji se od
operanada meusobno povezanih operatorima. Operandi mogu biti varijable, konstante i poziv
funkcije, a operatori mogu biti osnovni, logiki i relacijski.
Prioriteti izvravanja su slijedei:
1. not
2. and * / div mod
3. or + 4. = > < >= <=
Postoje pravila koja se primjenjuju prilikom izraunavanja vrijednosti izraza, a to su:
1. Operacije se izvravaju prema prioritetu, a ako ima vie operacija istog prioriteta onda
se one izvravaju s lijeva na desno.
2. Ako su unutar izraza zagrade, onda se pravila prioriteta primjenjuju tako da se najprije
rjeava izraz u zagradi.
3. Ako u izrazu imamo i realne i cjelobrojne operande rezultat e biti realan
4. Sve varijable koje koristimo moraju biti definirane
5. Ne smijemo izostavljati operatore mnoenja (kao u matematici)
6. Dva operatora ne mogu biti jedan do drugoga
7. Zagrade moraju biti u paru (broj otvorenih zagrada = broju zatvorenih zagrada)
Primjeri izraza:
7.2 + 9*2
not(b<c)

36

19 mod 3 - 2
Naredba pridruivanja koristi se na slijedei nain:
ime_varijable : = izraz;
Primjeri naredbi pridruivanja:
a := sqrt (9*d*b);

za varijable tipa real

b:= 6 + 9 * 18;

za varijable tipa integer

2.4.2.3

Procedure za uitavanje i ispis podataka

Procedure za uitavanje i ispis podataka su: read i write.


Opi oblik procedure read i write su:
La kojoj e se
read ( naziv_datoteke, ime_varijable);
naziv_datoteke je datoteka iz koje e se podaci itati, a ime_varijable je varijabla kojoj e se
uitani podatak dodijeliti
write (naziv_datoteke, sadraj_za_ispis);
naziv_datoteke je datoteka u koju e se podaci ispisivati, a sadraj_za_ispis predstavlja izraz,
vrijednost varijable ili proizvoljan niz znakova.
Procedura za uitavanje podataka read prihvaa ulazne podatke i pridruuje ih varijablama u
popisu
Postoji nekoliko oblika procedure read:
-

read (x1, x2, , xn);

uitava n elemenata

readln (x1, x2, , xn);

uitava n elemenata svaki u svojoj liniji

readln;

proputa jednu ulaznu liniju do poetka slijedee

37

Procedura za ispis podataka write koristi se za ispis niza proizvoljnih znakova unutar
jednostrukih navodnika, vrijednosti varijabli i vrijednosti izraza.
Postoji nekoliko oblika procedure write:
-

write (x1, x2, , xn);

ispisuje n elemenata u jednu izlaznu liniju

writeln (x1, x2, , xn);

kao i prethodna, na kraju ispisa prelazi na poetak


nove linije

writeln;

prijelaz na poetak novog reda

2.4.2.4 Nestandardni jednostavni tipovi podataka


Kada smo navodili tipove podataka, meu jednostavnim tipovima podataka, spomenuli smo i
nestandardne jednostavne tipove podataka.:
-

Nabrojivi tip

Intervalni tip

Opi oblik definicije nestandardnog tipa podataka je:


type ime_tipa : podruje_vrijednosti;

Nabrojivi tip
Nabrojivi tip podataka je konaan ureen skup imena. Imena se navode u okruglim zagradama,
( ) a odvajaju se zarezom. Ta imena predstavljaju konstante nabrojivog tipa. Definicija u opem
obliku je:
ime_tipa = (ime1, ime2, ime3, , imen );
Istu konstantu ne moemo ponavljati u vie type definicija.
Npr.
type boje = (zuta, zelena, crvena plava);

38

var auto : boje;


Tipove moemo deklarirati i u dijelu za deklaracije.
Npr.
var auto: (zuta, zelena, crvena, plava);
Nabrojive vrijednosti su ureene i numerirane od 0 . Za njih su definirane funkcije ord, pred i
succ.
Npr.
ord (zelena) = 1
pred (zelena) = zuta
succ(zelena) = crvena
Intervalni tip
Ovo je podinterval nekog poznatog tipa podataka, osim tipa real.
Definicija u opem obliku je:
ime_tipa = konst1..konst2;
Konstanta1 predstavlja najmanju, a konstanta2 najveu vrijednost.
Npr.
type ocjena = 1..5;
var uspjeh : ocjena;

2.4.2.5 Naredbe grananja


Ove naredbe omoguuju izradu razgranate strukture programa. To su naredbe if i case
Naredba if
Ona omoguuje jednostruko i viestruko uvjetna grananja. Postoje dva oblika naredbe if:
- if then
- ifthenelse
Naredba ifthen
Opi oblik naredbe je:
39

if uvjet then naredba;


ako je zadani uvjet ispunjen onda se naredba izveava, a ako nije onda naredba se preskae.
Naredba if then .else
Opi oblik naredbe je :
if uvjet then naredba1 else naredba2;
ako je zadani uvjet ispunjen , tada se izvrava naredba1, a ako nije izvrava se naredba2.
Naredba if se moe nalaziti unutar druge naredbe if i tada je zovemo razgranatom naredbom if.
Ona se koristi pri ispitivanju viestrukih uvjeta.

Naredba case
Ova naredba se koristi za ispitivanje jedne varijable ili izraza. U zavisnosti od te vrijednosti
izvrit e se jedna ili niz naredbi.
Opi oblik naredbe case je:
case selektorski_izraz of
konstanta_1 : naredba_1;
konstanta2 : naredba_2;
. . .
konstanta_n : naredba:n;
end;
Naredba se izvrava na slijedei nain:
Najprije se izrauna selektorski_izraz, zatim se ta izraunata vrijednost usporeuje sa nizom
konstanti. Ako je jednaka jednoj od njih , onda se izvrava naredba ili niz naredbi koje su
dodijeljene toj konstanti.
Selektorski_izraz moe biti cjelobrojnog, znakovnog ili logikog tipa. Konstante moraju biti
istog tipa. Redoslijed konstanti nije bitan., ali se jedna konstanta moe pojaviti samo jednom.
Istu naredbu moemo dodijeliti veem broju konstanti, koje se onda odvajaju zarezom.
Konstanti moemo dodijeliti i sloenu naredbu.

40

2.4.2.6 Naredbe za ponavljanje


Programske petlje su naredbe za ponavljanje. One omoguuju viestruko ponavljanje jedne
naredbe ili niza naredbi. Broj ponavljanja se moe zadati na dva naina i to :
- eksplicitno kada je broj ponavljanja poznat i
- uvjetno kada e broj ponavljanja ovisiti o ispunjavanju nekog zadanog uvjeta
U PASCALU postoje tri tipa programskih petlji:
- for petlja omoguuje viestruko ponavljanje za zadani broj ponavljanja
- while petlja omoguuje viestruko ponavljanje za zadani broj ponavljanja, ali kad se uvjet
ponavljanja ispituje na poetku niza naredbi
- repeat petlja viestruko ponavljanje , gdje se uvjet ponavljanja ispituje na kraju niza
naredbi; niz naredbi se izvrava barem jednom
Naredba for
Ovu naredbu primjenjujemo kada nam je unaprijed poznat broj ponavljanja neke naredbe ili
niza naredbi.
Opi oblici su joj:
1. for i := pocetna to krajnja do naredba;
i varijabla koja kontrolira prolaze kroz petlju
pocetna pocetna vrijednost varijable i
krajnja krajnja vrijednost varijable i
2. for i := pocetna downto krajnja do naredba;
Varijabla koja kontrolira prolaze kroz petlju mora biti deklarirana. Ona ne moe biti tipa real.
Mora biti ordinalnog tipa, tj. Tipa kojemu se zna i prethodnik i sljedbenik.
Poetne i krajnje vrijednosti mogu biti izrazi, iji se tip mora podudarati s tipom vrijednosti
varijable koja konttrolira prolaze kroz petlju.
Ako je u 1. sluaju krajnja vrijednost manja od poetne, naredba se nee izvriti nijednom, a
ako je u drugom sluaj u poetna vrijednost manja od krajnje naredba se isto tako, nee izvriti
nijednom. I poetna i krajnja vrijednost zadaju se jednom i ne mogu se mijenjati za vrijeme
izvravanja petlje.
Mogue je unutar petlje for ponovo postaviti for petlju.
Opi oblik petlje for unutar petlje for je:
for poc_vr_1 : = 1 to kraj_vr_1

do

for poc_vr_2 : = 1 to kraj_vr_2 do


...
for poc_vr_n := 1 to kraj_vr_n do

41

Naredba while
Ako u zadatku ne moemo unaprijed odrediti broj ponavljanja , tj. Ako taj broj zavisi od
ispunjenja nekog uvjeta, koristimo naredbu while.
Kod naredbe while uvjet se ispituje na poetku i naredbe unutar while petlje se izvravaju sve
dok je uvjet ispunjen.
Opi oblici petlje while su:
1. while uvjet do
naredba;
2. while uvjet do begin
naredba_1;
naredba_2;
. . .
naredba_n;
end;

Naredba repeat
Ova se naredba koristi kada nam broj ponavljanja ovisi o ispunjenju nekog uvjeta. Uvjet se
ispituje na kraju, pa se naredba ili vie njih ponavljaju unutar petlje sve dok uvjet nije ispunjen.
Opi oblici naredbe repeat su:
1. repeat
naredba;
until uvjet;
2. repeat
naredba_1;
naredba_2;
naredba_3;
until uvjet;

2.4.2.7 Potprogrami
Potprogrami su zasebne cjeline nizova naredbi napisanih na jednom mjestu, koje moemo
pozivati proizvoljan broj puta. Izvrava se u onom trenutku kada je pozvan u programu.
Postoje dvije vrste potprograma: funkcije i procedure

42

Zato uvodimo potprograme?


Potprograme uvodimo iz slijedeih razloga:
- Kada su programi veoma opirni i sloeni, dobro je velike nizove naredbi
podijeliti u manje logike cjeline, kojima se lake sluimo.
- Ako esto koristimo iste nizove naredbi, na vie mjesta u programu, te kada na
razliitim mjestima u programu koristimo iste naredbe, ali sa razliitim
podacima
Tada su nam programi razumljiviji, itljiviji i moemo lake u njih ugraivati nove funkcije.
Koritenjem potprograma lake rjeavamo programske zadatke metodom top-down.
To je postupak (odozgo prema dolje ili openito prema detaljnom) prilikom kojega problemski
zadatak ralanjujemo na manje logike cjeline module . Svaki modul se, opet, po potrebi,
moe podijeliti na jo manje dijelove.
Sama ideja strukturnog programiranja je u tome da se zadri linijska struktura glavnog
programa, pri emu moduli mogu sadravati i sloenije strukture ( linijske, razgranate ili
ciklike ).
Uz pojam potprograma vezujemo i pojam parametara. Postoje dvije osnovne kategorije
parametara: stvarni i formalni parametri.
Formalne parametre koristimo prilikom definiranja potprograma; to su imena varijabli koje
navodimo unutar zagrada, koriste se za razmjenu podataka izmeu programa i potprograma.
Stvarne parametre koristimo kod poziva potprograma, a povezuju se sa formalnim
parametrima. Postoje dvije vrste formalnih parametara:
- vrijednosni (ulazni zadaju se u trenutku poziva)
- promjenjivi (ulazno/izlazni mogu preuzimati vrijednost iz glavnoga programa,
te mogu mijenjati vrijednost varijabli)
I funkcije i procedure moemo koristiti sa formalnim parametrima i bez njih.
Funkcije
Potprogram ima zaglavlje koje se sastoji od kljune rijei function iza koje slijedi ime
potprograma. (imena biramo kao i imena varijabli). Nakon imena navodimo formalne
parametre, (ako se radi o potprogramu sa formalnim parametrima), a navodimo ih unutar
okruglih zagrada. Nakon toga navodimo tip funkcije. Formalne parametre istog tipa odvajamo
zarezima, a izmeu popisa formalnih parametara i tipa nalaze se dvije toke.
Nakon zaglavlja dolazi dio za opis podataka koji se koristi samo u potprogramu. Tijelo
potprograma omeeno je rijeima begin i end. Izmeu njih se nalaze naredbe. Na kraju
potprograma je end; .
Potprogram moemo pozvati iz nekog drugog potprograma. Potprogram moe pozvati i
samoga sebe, a u tom sluaju se takav potprogram naziva rekurzivni potprogram ili rekurzija.
Funkcije obino koristimo kada je potrebno u program vratiti jednu vrijednost. Izlazna
vrijednost je sadrana u imenu funkcije, pa je zato potrebno u zaglavlju navesti tip funkcije
usklaen sa tipom izlazne vrijednosti.
U PASCALU postoji niz standardnih funkcija: npr. sqr(x), abs(x), sin(x).
Opi oblik definicije funkcije je:

43

1. Definicija funkcije bez formalnih parametara


function Ime_f : tip_f;
opis podataka;
begin
naredbe;
ime_f := vrijednost;
end;
2. Definicija funkcije s formalnim parametrima
function Ime_f (p1, p2, pn : tip): tip_f;
opis podataka;
begin
naredbe;
ime_f := vrijednost;
end;
Funkcija se u glavnom programu izvrava tek kada je pozovemo. Ona se poziva svojim
imenom , a ako je funkcija s parametrima, unutar okruglih zagrada navodimo stvarne
parametre. Stvarni parametri mogu biti konstante, varijable ili izrazi. Stvarni i formalni
parametri se moraju slagati po po redoslijedu, tipu i broju.
Procedure
Procedure se koriste kada u programu moramo mijenjati jednu vrijednost, vie njih ili ni jednu
eksplicitno. Postoje standardne procedure u Pascalu, kao npr. read i write. esto koritene
procedure su i Inc(x,n) i Dec(x,n).
Procedura Inc(x,n) koristi se za x i n, cjelobrojne varijable, a zamjenjuje naredbu x:= x + n.
Ako je n = 1, onda se moe koristiti naredba Inc(x), to bi znailo: x:= x + 1.
Procedura Dec(x,n) koristi se za x i n, cjelobrojne varijable, a zamjenjuje naredbu x:= x - n.
Ako je n=1 onda se moe koristiti u obliku Dec(x), to bi znailo x:= x 1.
Ukoliko u Pascalu ne postoji standardna procedura kakvu trebamo, moemo napisati novu
proceduru, a primjenjivat emo je kao i standardnu.
Procedura se poziva posebnom naredbom, navoenjem imena procedure. Ako se radi o
proceduri s formalnim parametrima, u okruglim zagradama navodimo stvarne parametre. Oni
se moraju slagati s formalnim parametrima po redoslijedu, tipu i broju.
Formalni parametri u proceduri mogu biti:
- vrijednosni (ulazni) vrijednosti se zadaju pri pozivu procedure
- promjenjivi (ulazno-izlazni) njihove promjene vrijednosti se u proceduri
oituju u programu ili potprogramu iz kojega je procedura pozvana; ispred
promjenjivih parametra se pie rije var

44

2.4.2.8 Sloeni tipovi podataka


Sloeni tipovi podataka u Pascalu su: skupovi (set), nizovi (array), slogovi (record) i datoteke
(file)., te niz znakova (string). Sastoje se od komponenti koje mogu biti jednostavni tipovi
podataka, ili ve definirani sloeni tipovi.
Nizovi
To su ureeni i ogranieni skupovi varijabli koji imaju svoje ime , a odreujemo ga kao kod
jednostavne varijable. Maksimalni broj varijabli mora biti unaprijed poznat. U jednom nizu sve
varijable (elementi niza) moraju biti istog tipa. Elementi niza imaju svoje ime i indeks naveden
u uglatim zagradama. Oni mogu biti jednostavnog ili sloenog tipa. Svi indeksi moraju biti
istog (ordinalnog) tipa.
Jednodimenzionalni niz je ureen i ogranien skup varijabli istog tipa kod kojega je svaka
komponenta ureena samo jednim indeksom, koji odreuje poziciju komponente u nizu. Ako
ne znamo toan broj komponenti u niz, rezerviramo u deklaraciji najvei oekivani broj.
Jednodimenzionalnom nizu u matematikom smislu odgovara pojam vektora.
Opi oblik deklaracije varijable jednodimenzionalnog nizovnog tipa je:
var niz : array[tip_indeksa] of tip_komponenti_niza;
ili pomou definicije tipa:
type def_niza = array[tip_indeksa] of tip_komponenti_niza;
var niz : def_niza;
Meu nizovima je mogua naredba dodjele, a ona je oblika:
ime_prvog_niza : = ime_drugog_niza;
Viedimenzionalni niz je ureen i ogranien skup varijabli istog tipa kod kojega je svaka
komponenta odreena s vie indeksa. U praksi najee koristimo dvodimenzionalne nizove.
Za unaprijed definirane konstante m i n, deklaracija varijable x bila bi:
type dvod_niz: array[1..n, 1..m] of tip podataka_komponent;
var x: dvod_niz;
Dvodimenzionalnom nizu u matematikom smislu odgovara pojam matrice.
Matrica koja ima isti broj stupaca i redaka naziva se kvadratna matrica, dakle njene su
dimenzije nxn. Nizovi ija je dimenzija vea od dva koriste se slino kao jednodimenzionalni i
dvodimenzionalni.
Stringovi
String je niz znakova. Varijabli tipa string moe se unaprijed definirati maksimalna duljina, a
stvarna duljina moe biti promjenljiva. Ako se kod deklaracije ne navede nikakav broj,
varijabli se moe dodijeliti bilo koji niz znakova duljine od 0 do 255.

45

Opi oblik deklaracije varijable tipa string je:


type
ime_tipa1 = string [duljina_stringa];
ime_tipa2 = string;
var
ime_varijable1 : ime_tipa1;
ime_varijable2 : ime_tipa2;
ili
var ime_varijable1 : string [duljina_stringa];
ime_varijable2 : string;
Varijabla tipa string ispisuje se naredbom write ili writeln, a uitava se samo naredbom readln.
Funkcije definirane za rad sa stringovima, za slijedeu definiranu varijablu su:
var s1,s2,s3 : string;
p,d : integer;
-

funkcija Lenght (s1) daje broj znakova varijable s1


funkcija Concat (s1,s2,s3) formira novi string spajanjem navedenih stringova
funkcija Pos (s1,s2) ispituje je li string s1 sastavni dio s2. Ako je, tada funkcija
vraa cijeli broj koji odgovara poziciji prvog pojavljivanja stringa s1 u stringu
s2, a ako nije funkcija vraa nulu.
funkcija Copy (s1,p,d) stvara novi string na nain da iz stringa s1 kopira d
znakova poevi od pozicije p.
standardna funkcija UpCase (znak:char):char prevodi malo slovo u veliko a
na ostale znakove nema utjecaja.

Procedure definirane za rad sa stringovima, za slijedeu definiranu varijablu su:


var s1,s2 : string;
p, d : integer;
kod_greske:integer;
broj: integer ; (*ili broj : real*)
-

procedura Delete (s1, p, d) brie podstring koji poinje od pozicije p, a ima


duljinu d
procedura Insert (s1, s2, p) dodaje string s1 u string s2 poevi od pozicije p
procedura Str (broj, s1) prevodi numeriku vrijednost broja u string s1 i tada se
broj moe formatirati slino kao u naredbi za ispis write ili writeln.
procedura Val (s1, broj, kod_greske) pretvara string s u broj tipa integer (ili
real). Varijabla kod_greske se pojavljuje, da bi se oznailo ukoliko je dolo do
greke, i tada ona dobiva vrijednost razliitu od nule. Ako prilikom konverzije
nije dolo do greke, ta je vrijednost jednaka nuli. Konverzija e biti ispravna
ako string sadri bilo koji od dozvoljenih zapisa broja (cjelobrojni, realni s
fiksnom ili pokretnom decimalnom tokom)

46

Skupovi (set)
Rad sa skupovima u Pascalu je drugaiji nego u matematici, razlikuje se po oznakama , a broj
elemenata skupa je ogranien. Skup se zapisuje u uglatima zagradama, a njegovi elementi se
meusobno odvajaju zarezima.
Primjer skupova:
[uta, crvena, plava, zelena]
[1,2,3,4,5,6]
Skupovni tip podataka je skup svih podskupova nekog osnovnog tipa. Osnovni tip moe biti
bilo koji jednostavni tip, osim realnog, pod uvjetom da se cjelobrojni zadaje intervalom
navodei mu donju i gornju granicu, meusobno razdvojenu dvjema tokama.
Opi oblik deklaracije varijable skupovnog tipa je:
type ime_skup_tipa = set of osn_tip;
var ime_var : ime_skup_tipa;
ili
var ime_var : set of osn_tip;
Varijablama skupovnog tipa moemo naredbom dodjele pridruiti odgovarajuu vrijednost.
Nad varijablama i konstantama skupovnog tipa definirane su operacije:
- unije (+)
- presjeka (*)
- razlike (-)
Njihov rezultat je logikog tipa.
Nad varijablama i konstantama skupovnog tipa moemo primijeniti operacije:
-

jednakosti =
razliitosti <>
podskupa i <=
nadskupa >=

Relacijski operator in koristimo za provjeru pripadnosti elementa nekom skupu.


Slog(record)
Slog (record) je tip podataka koji se moe sastojati od komponenata razliitog tipa.
Opi oblik deklaracije sloga je:

47

type ime_rec = record


kompon_1 : tip1;
kompon_2 : tip2;
.
.
kompon_n : tipn;
end;
var ime_var_jednostr_slog : ime_rec;
ime_var_nslogova: array[1 .. n] of ime_rec;
Pojedinoj komponenti pristupamo tako da navedemo ime sloga i ime komponente odvojeno
tokom.
Da bi nam upotreba pojedinih komponenti bila jednostavnija moemo koristiti naredbu with .
Ona nam omoguuje da umjesto uestalog ponavljanja imena sloga navodimo samo ime
pojedine komponente.
Datoteke(file)
Datoteke su svi skupovi podataka s kojima program komunicira, a mogu biti uitani ili ispisani
na bilo koji nain. Standardna ulazna datoteka je input, standardna izlazna datoteka je output.
Osim standardnih, postoje i kreirane, korisnike, datoteke.
Ako trebamo podatke iz nekog programa zapamtiti na nekom vanjskom nosiocu podataka,
potrebno je kreirati korisnike datoteke. Program mora uspostaviti vezu sa datotekama kkoje
koristi. Taj postupak se zove otvaranje datoteke. Kada se datoteka otvori, tada se mogu njeni
podaci itati ili se upisivati novi. Kada se zavri obrada, datoteka se zatvara.
Postoje dva naina upisivanja podataka u datoteke:
-

binarni (binary mode)


tekstualni (text mode)

pa s obzirom na njih razlikujemo binarne i tekstualne datoteke.


U tekstualnim datotekama podaci su zapisani u obliku znakova. Pristup im je neto sporiji.
Organizirane su tako da se prije upisa u tekstualnu datoteku svi podaci pretvaraju u znakove.
Znakovi su grupirani u redove koji mogu biti razliite duljine. Najmanja duljina je nula, a
najvea je jednaka ukupnoj duljini datoteke. Fiziki zapis je neprekidni niz podataka, pa se
onda podjela na redove vri specijalnim znakom eoln (end of line). Kraj datoteke se oznaava
znakom eof (end of file). Ovi znakovi nemaju grafiki prikaz, pa se ne prikazuju na ekranu.
Postoje i standardne logike funkcije Eoln i Eof koje pokazuju je li kraj reda ili datoteke.
Tekstualne datoteke dijelimo na:
-

standardne datoteke
korisnike datoteke

Standardne datoteke su input (samo ulazna) i output (samo izlazna). Kod njih se znakovi
uitavaju redom i ne mogu se vratiti na prethodni podatak.
Npr.
read (input, ime1);

48

write (output, sadrzaj);


eoln (input);
eof (input);
Nazive input i output moemo ispustiti, budui je rije o standardnim input i output
datotekama.
Standardna datoteka je i lst koja je samo izlazna a koristi se za ispis na printer. Koristi se na
slijedei nain:
write (lst, sadrzaj_ispisa);
Korisnike tekst datoteke su datoteke ije su komponente tipa char.
Opi oblik deklaracije varijable datotenog tipa je:
var ime_dat: file of ime_tipa;
Opi oblik deklaracije tekstualne datoteke je:
var ime_dat: text;
ili
type text = file of char;
var ime_dat : text;
Program komunicira sa datotekama postupkom otvaranja datoteka, nakon ega se podaci mogu
mijenjati, a nakon rada se datoteka treba zatvoriti.
Datoteka ima svoje "logiko" ime (navedeno u deklaraciji kao ime datotene varijable) i svoje
fiziko ime (ono pod kojim je snimljena na vanjskoj memoriji). Da bi se omoguio rad s
podacima neke datoteke potrebno je povezati njeno logiko i fiziko ime. To emo uraditi
naredbom Assign na slijedei nain:
Assign (logiko_ime, fiziko_ime);
Naredba kojom se otvara nova datoteka je Rewrite:
Rewrite (logiko_ime);
Ve postojeu datoteku otvaramo naredbom Reset:
Reset (logiko_ime_datoteke);
Datoteka se zatvara naredbom Close:
Close (logiko_ime_datoteke)

49

Naredbe koje omoguuju uitavanje podataka iz tekstualne datoteke su: Read, Write, Readln,
Writeln.
U tekstualnu datoteku upis moemo vriti na kraju u sluajevima:
- nakon otvaranja nove datoteke
- nakon svakog izvrenja naredbe write ili writeln
- ili ako elimo na kraj ve postojee datoteke dodati novi tekst
a sve to pomou naredbe Append:
Append (logiko_ime_datoteke);
Dodavanje teksta u tekstualnu datoteku vrimo pomou druge pomone datoteke ijim
sadrajem na kraju zamijenimo polaznu datoteku.
Brisanje dijela teksta u datoteci realiziramo pomou druge pomone datoteke
Preimenovanje i brisanje tekstualne datoteke (koja prethodno mora biti zatvorena) realiziramo
naredbama:
Za preimenovanje
Rename (logiko_ime, novo_fiziko_ime);
Za brisanje
Erase (logiko_ime);
Binarna datoteka:
U binarnim datotekama
Podaci su zapisani kao i u memoriji. Prilikom rada s tim podacima nema dodatnih
transformacija.
Kod deklaracije ove datoteke potrebno je navesti kojeg e tipa biti komponente datoteke.
Postupci za rad s binarnim datotekama istovjetni su kao oni za rad s tekstualnim, osim readln ,
writeln, eoln.
Opi oblik deklaracije varijable datotenog tipa je:
var ime_datoteke: file of ime_tipa_komponenti;

50

2.4.2.9 Dinamike strukture podataka


Dinamike varijable su one koje koriste memorijski prostor samo za vrijeme njihove upotrebe.
Nakon toga se memorijski prostor moe osloboditi. One se realiziraju pomou pokazivaa. Na
taj nain se ubrzava pristup podacima i olakava rad s njima.
Dinamikim varijablama pristupamo pomou pokazivaa (pokazivakih varijabli). Ime
dinamike varijable definiramo pomou imena pokazivake varijable, iza kojega je strelica
prema gore .Kada se kreiraju, dinamike varijable sadravaju vrijednost tipa podataka koji je
zadan pokazivakom varijablom. Ona se smjeta u memorijski di koji se zove "heap".
Pokaziva pokazuje na adresu memorijske lokacije u kojoj se nalazi vrijednost druge varijable.
Opi oblik deklaracije pokazivaa je:
type ime_pokaz : ^tip_podataka;
var pokaz: ime_pokaz;
Pokaziva se moe definirati uz pomo tipa podataka koji je definiran iza definicije
pokazivaa.
Operatori koji su dozvoljeni pri radu sa pokazivaima su jednakost (=) i razliitost (<>).
Dozvoljena aktivnost meu pokazivaima je izjednaavanje.
Npr.
pokazivac1:= pokazivac2;
Dinamika varijabla se kreira u toku izvravanja programa, na temelju deklariranog pokazivaa
pozivom procedure new.
Opi oblik poziva procedure new, gdje je p pokaziva, je:
new (p) ;
Ime dinamike varijable kreira se tako da se iza imena varijable stavi oznaka ^, npr. p^.
Prije kreiranja dinamike varijable pokaziva je nedefiniran, tj. nije inicijaliziran. A, ako za ve
definirani pokaziva elimo da ne pokazuje vie na nijednu memorijsku lokaciju, dodijelit
emo mu vrijednost nil. Npr. p:= nil;
Dinamika varijabla se ukida procedurom dispose. Npr. dispose (pokazivac1);
Nakon ukidanja se memorijski prostor oslobaa, a pokaziva nije ukinut nego nedefiniran.

51

2.4.3 Primjeri problemski orijentirane nastave

Openito, didaktiko organizacijski tok problemski orijentirane nastave je sljedei:


1. Postavljanje problemske situacije. U prvoj fazi je poetno problemsko izlaganje od strane
uitelja, a nakon toga zadavanje problemske situacije. To znai da se do rjeenja moe doi
istraivanjem, angairajui sve svoje sposobnosti i znanja. Na taj se nain dolazi do pojanjenja
problema i jasnijeg voenja ka cilju kako se ne bi ilo previe u irinu i kako se ne bi odmaklo
od samoga problema.
2. Rjeavanje problema predstavlja onu fazu kada uenici, na osnovu svojih znanja i
sposobnosti daju mogua povoljna rjeenja. Postavljaju pretpostavke, i po potrebi ralanjujui
sam problem na one potrebne korake koji e na najbolji nain dovesti do rjeenja.
3. Zakljuak to je faza kada pruamo potpuno rjeenje i vrednovanje poetnog problemskog
zadatka.
Ovakav oblik nastave odmie od tradicionalne nastave u koli, jer nudi kolovanje koje e
bolje i potpunije pripremiti uenika na stvarne problemske, ivotne situacije.
Da bismo pristupili rjeavanju zadanog problema moramo poznavati osnove programskog
jezika u kojem elimo programirati! (tipove podataka, strukturu programa, deklaracije i
definicije, procedure i funkcije, .)

52

Primjer 1:
Zadatak: Raunanje s matricama

Primjer realizacije problemske nastave


Koritenje Berginovog pedagokog obrasca "Tool Box"
Didaktiki pristup: Znakovna skala
Berginov pedagoki obrazac "Tool Box" ima za cilj, ve u ranoj nastavi, nauiti uenike
konstruirati alate i to takve koje e koristiti i kasnije. Ovaj obrazac dobro promiljen i
interpretiran omoguava kreiranje upotrebljivog software-a za kasnije.
Proizaao je iz saznanja da uenici esto rade na problemu, napiu program i onda ga odbace
kada nastave s radom na drugim problemima. Koristi se dosta i pri poetnikim kursevima
programiranja. Potie uenike na kreiranje ponovo upotrebljivih sustava.
U primjeru raunanja s matricama rijeit e se nekoliko zadataka razliite sloenosti, uvijek
primjenjujui prethodno napisan program, kao "alat"..
Didaktiki primjenjujemo pristup Znakovna skala gdje e uenici najprije savladati
sintaksu programskog jezika, zatim semantiku, a nakon toga slijedi koritenje programskog
jezika kreiranje programa.
U poetnom problemskom izlaganju uitelj rjeava primjer:
Napisati program Ispis koji unosi matricu reda nxm, a zatim je ispisuje!

53

Program Ispis;
var i,j,m,n:integer;
a:array[1..10,1..10] of integer;
begin
write('Unesi broj redaka matrice: ');
readln(n);
write('Unesi broj stupaca matrice: ');
readln(m);
writeln('Unesi Matricu');
writeln;
for i:=1 to n do
for j:=1 to m do
begin
write('a[',i,',',j,']=');
readln (a[i,j]);
end;
writeln;
for i:=1 to n do
begin
for j:=1 to m do
write(a[i,j]:4);
writeln;
writeln;
end;
readln;
end.

slika 13. Program koji uitava i ispisuje matricu


Nakon uitavanja testnih podataka , izlazna matrica izgleda ovako:
Unesi broj redaka matrice: 3
Unesi broj stupaca matrice: 4
Unesi Matricu
a[1,1]=1
a[1,2]=2
a[1,3]=3
a[1,4]=4
a[2,1]=5
a[2,2]=6
a[2,3]=5
a[2,4]=4
a[3,1]=3
a[3,2]=2
a[3,3]=1
a[3,4]=7
1 2 3 4
5 6 5 4
3 2 1 7

slika 14. Rezultat izvravanja programa Ispis

54

Sada uitelj postavlja problemsku situaciju novi, sloeniji zadatak:


Napisati program koji uitava matricu reda nxm i prirodni broj k, a kao izlazni rezultat daje
matricu kojoj e svaki element biti pomnoen brojem k!
Zajedniki analiziraju zadatak, koriste prethodno napisan program, kako bi kao "alat" iskoristili
jedan njegov dio , te kreiraju novi program Mnozenje.

program Mnozenje;
var i,j,n,m,k: integer;
A:array[1..10, 1..10] of integer;
begin
write ('Unesi broj redaka matrice - n : ');
readln(n);
writeln;
write ('Unesi broj stupaca matrice - m :');
readln(m);
writeln;
for i:=1 to n do
for j:=1 to m do
begin
write ('A[',i,',',j,']=');
readln (A[i,j]);
end;
writeln;
write ('unesi broj k: ');
readln (k);
writeln;
for i:=1 to n do
begin
for j:=1 to m do
begin
A[i,j]:=A[i,j]*k;
write(A[i,j]:4);
end;
writeln;
end;
readln;
end.

slika 15. Program Mnozenje koji uitava zadanu matricu i mnoi je prirodnim brojem
Nakon uitavanja testnih podataka rezultat je:

55

Unesi broj redaka matrice - n : 4


Unesi broj stupaca matrice - m :3
A[1,1]=1
A[1,2]=2
A[1,3]=3
A[2,1]=4
A[2,2]=5
A[2,3]=6
A[3,1]=7
A[3,2]=8
A[3,3]=9
A[4,1]=10
A[4,2]=11
A[4,3]=12
unesi broj k: 5
5 10 15
20 25 30
35 40 45
50 55 60

slika 16. Testni podaci i rezultat izvravanja programa Mnozenje


Ovime smo zavrili prvi poetni korak, pa sada uitelj zadaje sloeniji zadatak koji zahtijeva
rjeavanje problema na vioj razini.
Napisati program koji uitava dvije matricu odgovarajueg reda, a kao izlazni rezultat daje
matricu koja se dobije mnoenjem ove dvije!

Rjeavajui ovaj zadatak problem razdvajamo na slijedee dijelove:


1. Postavljamo problemsku situaciju:
to znai pomnoiti dvije matrice?
Kakve matrice moemo mnoiti? (kojeg formata)
Kakav je openiti zapis matrice?
Kakve ulazne testne podatke elimo unijeti?
to elimo kao izlazni podatak i u kakvom obliku.
U ovom koraku analiziramo programski zadatak. Ponavljamo to znai pomnoiti dvije
matrice i naglaamo koji uvjeti moraju biti zadovoljeni da bismo mogli pomnoiti dvije
matrice:
1. Ponavljamo definiciju umnoka matrice A i skalara :

56

(A)ij = (A)ij ,
tj. matricu mnoimo skalarom tako da svaki njen element pomnoimo tim skalarom.
2. Mnoenje dviju matrica nije definirano za bilo koje dvije matrice. Vano je naglasiti
slijedee:
- da bi se mogle pomnoiti matrice A i B, tj. da bismo izraunali umnoak A*B,
navedene matrice moraju biti ulanane, a to znai da broj stupaca prve matrice mora biti
jednak broju redaka druge matrice. Tako, npr. Ako je matrica A formata mxn, onda matrica B
mora biti formata nxk.
- mnoenje matrica nije komutativno
3. Ako je A=(aij) matrica formata mxn, a B = (bij) matrica formata nxk, onda je opi
element umnoka AxB definiran formulom:
[AxB]ij = ai1b1j + ai1b1j + ai2b2j +... + ainbnj =
n

ip

b pj

p=1

Ovo je umnoak i-tog retka matrice A i j-tog stupca matrice B

( AB )ij = [ ai1

ai 2

b1 j
b
2j
... ain ] .
..

bnj

Rezultat ovakvog mnoenja matrica, daje nam matricu koja ima isti broj redaka kao
matrica A, a isti broj stupaca kao matrica B.
Npr.
1 2
1 2 3
22 28
4 5 6 . 3 4 = 49 64

5 6

57

2. Rjeavanje problema:
Problem se ralanjuje na manje dijelove - korake, koji e rjeavati (kodirati) dio po
dio. To je ujedno postupak rjeavanja problema.
U programiranju izraujemo algoritamsku strukturu, koja nam reprezentira tok
izvrenja programa: ulaz podataka, proces ili obrada, te izlaz podataka.
Koristimo poznate module (alate) uitavanja i ispisa matrice. Primjenjujemo
matematika znanja i vjetine, te znanja i vjetine programiranja. Budui da didaktiki
pristup Znakovna skala zahtijeva prethodno usvajanje sintakse i semantike
programskog jezika pretpostavljamo da uenici to znaju.
Naglaavamo da je to samo jedan od naina rjeavanja ovog problema, a da se on moe
rijeiti i drugaije.
Nakon toga vrimo testiranje programa testnim podacima koje smo prije toga provjerili

58

program mno_mat;
var i,j,k,l,n,m:integer;
a,b,c:array[1..10,1..10] of integer;
begin
write('Unesi broj redaka matrice A : ');
readln(m);
writeln;
write('Unesi broj stupaca matrice A i redaka matrice B: ');
readln(n);
writeln;
write('Unesi broj stupaca matrice B: ');
readln(k);
writeln;
writeln('Unesi matricu A ');
writeln;
for i:=1 to m do
for j:=1 to n do
begin
write('a[',i,',',j,']=');
readln(a[i,j]);
end;
writeln;
writeln('Unesi matricu B ');
writeln;
for i:=1 to n do
for j:=1 to k do
begin
write('b[',i,',',j,']=');
readln(b[i,j]);
end;
writeln;
writeln(' matrica A je:');
writeln;
for i:=1 to m do
begin
for j:=1 to n do
begin
write(a[i,j]:4);
end;
writeln;
end;
writeln;
writeln(' matrica B je:');
writeln;
for i:=1 to n do
begin
for j:=1to k do
begin
write(b[i,j]:4);
end;
writeln;
end;
writeln;
writeln(' A * B je:');
writeln;
begin
for i:=1 to m do
for j:=1 to k do
begin
c[i,j]:=0;
for l:=1 to n do
c[i,j]:=c[i,j]+a[i,l]*b[l,j];
end;
end;
for i:=1 to m do
begin
for j:=1 to k do
write (c[i,j]:4);
writeln;
end;
readln;
end.

slika 17. Program mno_mat koji mnoi dvije matrice i kao rezultat daje treu

59

Testirajui program dobili smo slijedee rezultate:

Unesi broj redaka matrice A: 2


Unesi broj stupaca matrice A i redaka matrice B : 3
Unesi broj stupaca matrice B : 2
Unesi matricu A
a[1,1]=1
a[1,2]=2
a[1,3]=3
a[2,1]=4
a[2,2]=5
a[2,3]=6
Unesi matricu B
b[1,1]=1
b[1,2]=2
b[2,1]=3
b[2,2]=4
b[3,1]=5
b[3,2]=6
matrica A je:
1 2 3
4 5 6
matrica B je:
1 2
3 4
5 6
A * B je:
22 28
49 64

slika 18. Testni podaci i rezultat izvravanja programa mno_mat

3. Zakljuak
Program smo testirali i utvrdili da radi ispravno. Koristili smo poznate dijelove programa i
povezali ih u novu cjelinu.

60

Primjer 2:
Zadatak: Raunanje s matricama

Primjer realizacije problemske nastave


Koritenje Berginovog3 pedagokog obrasca "Fixer upper" i "Fill in the blanks"[9],[21]
Didaktiki pristup: Znakovna skala
Ovaj isti zadatak mogao bi se i rjeavati primjenom drugog pedagokog obrasca. Smisao
obrasca Fixer upper je da se uenicima izloi problemski zadatak, pa im se prezentira gotov
program koji u sebi sadri greke. Od uenika se trai da poprave greke i da raspravljaju o
njima. Ovo je dobro primjenjivo u ranom programiranju kada uenici jo nemaju dovoljno
znanja i vjetina da naprave program od poetka do kraja. Prilikom rjeavanja i diskusije o
moguim ispravnim rjeenjima, oni bolje sagledavaju kako funkcionira neki sustav, bolje
razumiju problem i mogu dobiti ideju kako ga rijeiti. Bolje uoavaju jezine, sintaksne i
semantike greke. U kombinaciji s ovom metodom veoma dobro je primjenjiva i metoda Fill
in the blanks gdje se uenicima daju programi u kojima su izostavljeni neki dijelovi, te
konani rezultat izvrenja programa, a uenici moraju na prazna mjesta popuniti izostavljene
instrukcije. Ovakvi pedagoki obrasci omoguuju da uenici aktivno sudjeluju u nastavi, bolje
uviaju kako program radi, bolje razumiju i lake dolaze do ideje kako ga rijeiti.
Ovaj model je primjenjiv na vie razina uenja programiranja, kod poetnih i kod naprednih
kurseva, a korisan je i za individualni i za timski rad.

Zadatak:

Primjer realizacije problemske nastave


Koritenje Berginovog pedagokih obrazaca "Spiral" i "Gold Star"
Didaktiki pristup: Sustav spoznajnih ciljeva
Didaktiki pristup sustava spoznajnih ciljeva temelji se na tome da najprije pokrenemo neki
gotov program, da uenici vide to i kako radi. Ubacuju testne podatke i diskutiraju rjeenja.
Zatim itaju programski kod. Nakon toga dobiju zadatak slian prethodnom, ali sa malim

3
Joseph Bergin, profesor raunalnih znanosti i tvorac pedagokih obrazaca primijenjenih u pouavanju programiranja, na sveuilitu
Seidenberg School of Computer Science and Information Systems, Pace University , New York [21]

61

izmjenama, gdje oni, trebaju samostalno rijeiti problem. Kada su sposobni napraviti izmjene
koje se od njih trae, tada im se zadaje zadatak da sami i kreiraju neki novi, slini program.Uz
ovakav didaktiki pristup moemo koristiti pedagoki obrazac "Spiral" koji se odnosi na
nastavu u kojoj se veliki broj koncepata mora obraditi zajedno, a gdje su teme uzajamno
povezane. Ako uenici ve imaju neko prethodno znanje, nastavu trebamo uiniti
dinaminijom i zanimljivijom, a ne ii previe u detalje koji su od prije poznati. Nastavu je
potrebno dobro isplanirati, tako da da se ide od jednostavnijih primjera ka sloenijima.
Primjena pedagokog obrasca "Gold Star" oituje se u tome da se uenici nagrade i pohvale za
sve ono to dobro naprave. Dobre ocjene su veliki prvi motivator uenicima, te im ulijevaju
samopouzdanje. Za sve to dobro urade potrebno ih je i pohvaliti i ohrabriti. Pohvala pozitivno
djeluje i na mlae i na starije uenike, a trebalo bi je koristiti u svim teajevima i na svim
razinama.

2.4.4 Primjeri programirane nastave


Didaktiko-metodiki organizacijski tok programirane nastave treba osigurati to kvalitetnije
provoenje nastave.
Najei modeli ovog oblika nastave su linearni i razgranati model.
Bez obzira za koji se od ovih modela odluili, vaan je konani cilj, a to je, osposobiti uenike
da cjelovito sagledaju problem te ga i programski realiziraju.
Da bi uenik dobro napisao program potrebno je realizirati slijedee faze: fazu rjeavanja
problema i fazu implementacije. U prvoj fazi se generira rjeenje problema, a u drugoj se to
rjeenje prevodi u programski jezik. Dakle za programiranje su potrebne dvije vjetine:
rjeavanje problema i implementacija.

Rjeavanje problema
Za rjeavanje problema potrebno je koritenje apstrakcija, te je neophodno osigurati alate koji
e im u tome pomoi. Idealni nastavni sadraj raunalnih znanosti bi trebao uenike nauiti
osnovnim konceptima raunalnih znanosti zasnovanim na matematikim temeljima te razviti
sposobnost koritenja tih koncepata u analizama i razvoju software-a.

62

Programiranje potie uenike da procjenjuju svoja rjeenja i proces razmiljanja, pa zato ovaj
misaoni proces doputa uenicima da pretvore usvojene vjetine rjeavanja problema u rijeene
problemske situacije. Koji god pristup rjeavanju problema odabrali, poznato je da je
rjeavanje problema neophodan i prvi korak u razvoju software-a.

Implementacija
Implementacijska faza podrazumijeva pravilno pisanje rijei za predloeno rjeenje u
specifinom programskom jeziku, izvravanje i debagiranje koda u specifinom okruenju.
Za uspjeno ostvarivanje ove potrebno je svladati nekoliko podruja:

Sintaksu odabranog jezika

Konstrukcija programa

Testiranje i ispravljanje pogreki

Zadatak
Sloeni tipovi podataka u programskom jeziku Pascal - Nizovi

Primjer realizacije programirane nastave linearni model


Koritenje Berginovih pedagokih obrazaca "Tool Box", "Spiral"
Didaktiki pristup: Znakovna skala

Kod realizacije programirane nastave uz pomo linearnog modela podrazumijeva se da je


gradivo podijeljeno u manje cjeline, te da se zadani zadaci izvravaju odreenim redoslijedom.
Tek uspjenim rjeavanjem odreene nastavne jedinice, to se utvruje rjeavanjem zadataka,
moe se prijei na viu razinu i pristupiti rjeavanju sloenijih zadataka.
S pedagokog aspekta moemo kombinirati vie razliitih pristupa, pa tako npr. Berginov

pedagoki obrazac Fill in the blanks, gdje uenici mogu dopuniti odreene dijelove programa,
zatim Tool Box, gdje na poetku kreiraju neke programe i procedure koje e koristiti i kasnije,
te obrazac Spiral koji omoguuje da se bre i lake savladaju povezane teme.

63

Didaktiki primjenjujemo pristup Znakovna skala gdje e uenici najprije savladati


sintaksu programskog jezika, zatim semantiku, a nakon toga slijedi koritenje programskog
jezika kreiranje programa.
Da bi smo savladali modul nizova, sloenih tipova podataka, u programskom jeziku Pascal,
razdvajamo ovo gradivo u etiri cjeline:

1. Jednodimenzionalni nizovi
2. Pretraivanje i sortiranje nizova
3. Viedimenzionalni nizovi
(Uz pretpostavku da uenici ve poznaju osnove programskog jezika, strukturu programa,
tipove podataka, standardne procedure za uitavanje i ispis podataka, naredbe grananja,
ponavljanja, upotrebu potprograma)
U uvodnom dijelu definiramo karakteristike niza[7]:
Niz je ureen, ogranien skup varijabli za koje vrijedi:

Svaki niz ima svoje ime koje se odreuje na isti nain kao i ime jednostavne
varijable

Maksimalan broj lanova niza unaprijed je odreen

Sve varijable jednog niza istog su tipa

Varijable niza nazivaju se elementima niza

Ime elemenata niza sastoji se od imena niza i indeksa koji se navodi unutar
uglatih zagrada. Svaka se komponenta moe shvatiti kao zasebna varijabla.

Komponente se meusobno razlikuju po indeksu.

Komponente mogu biti jednostavnog ili sloenog tipa.

Svi indeksi su istog tipa.

Indeksi su ordinalnog tipa zna im se prethodnik i sljedbenik, pa ne moe


biti tipa real.

slika 19. Definicija i karakteristike niza

Nakon uvoda, dajemo primjer, te razlog za uvoenje nizova:

64

Pretpostavimo da treba izraunati prosjenu ocjenu 30 uenika jednog razreda, i ispisati sve
ocjene koje su manje od prosjene:
Definiramo varijable ocjena i prosjek:

var
ocjena, prosjek: real;
:
:
Dio programa u kojem uitavamo ocjene i raunamo prosjek izgleda ovako:
for i:=1 to 30 do

begin
write ('ucitaj ocjene', i, 'ucenika');
readln (ocjena);
prosjek := prosjek + ocjena;

end;
prosjek := prosjek / 30;
:
:
Nakon izvrenja ovog programa, kao izlazni rezultat dobijemo prosjenu ocjenu, ali ne
moemo dobiti sve unesene ocjene. Ovakav nain unosa podataka je vrlo nepraktian,
pogotovo kod unosa veeg broja podataka, pa zbog lakeg rada sa ovakvim podacima
koristimo nizove

slika 20. Raunanje prosjeka ocjena Zato uvoditi nizove?


U slijedeem koraku definiramo jednodimenzionalni niz kao ureen i ogranien skup varijabli
istog tipa kojemu je svaka komponenta odreena samo jednim indeksom. Taj indeks odreuje
poziciju komponente u nizu: x[1], x[2], x[3],.x[n]
Vano je napomenuti da ako ne znamo toan broj elemenata niza, onda rezerviramo najvei
oekivani broj. Prilikom rada s nizovima obavezno u uglatim zagradama uz ime niza navodimo
i indeks. Komponente niza su varijable onoga tipa koji je naveden u deklaraciji niza. Nad njima
se mogu izvravati sve operacije sa varijablama odgovarajueg tipa, a ako su im deklaracije

65

jednake moemo primijeniti i naredbu dodjele. Ako su komponente niza znakovnog tipa, onda
im moemo dodijeliti proizvoljan niz znakova unutar jednostrukih navodnika.
Kada smo to definirali prelazimo na primjere ispravnih i neispravnih naredbi dodjele:

Ako deklariramo varijable brojevi, x i znakovi na slijedei nain:

var
brojevi, x : array [-3 .. 3] of integer;
znakovi : array [1 .. 6] of char;
j : -1 .. 2;

onda bi ispravne naredbe dodjele bile:


brojevi [2] : = 33 ;
brojevi [-3] : = 33 * 20 ;
brojevi [j] : = 33 ;
znakovi : = 'abcdef' ;

a neispravne naredbe dodjele:


brojevi [-5] : = 33 ;

indeks -5 je izvan doputenog podruja

brojevi [20] : = 33 ;

indeks 20 je izvan doputenog podruja

x : = j;

nizu se moe dodijeliti samo drugi niz iste definicije

brojevi [2] : = 20.4

ne moe biti dodijeljen realan broj

slika 21. Primjeri ispravno i neispravno deklariranih varijabli


U slijedeem koraku zadajemo zadatke za provjeru znanja prethodne nastavne jedinice za isti
primjer deklariranja varijabli: brojevi, x i znakovi
Nakon toga pristupamo rjeavanju zadatka u kojem uitani niz treba sortirati:

66

Ako deklariramo varijable brojevi, x i znakovi na slijedei nain:

var
brojevi, x : array [-3 .. 3] of integer;
znakovi : array [1 .. 5] of char;
j : -1 .. 2;

Koje su od sljedeih naredbi dodjele pravilne, a koje nisu. Ako nisu objasni
zato!?
brojevi [j + 1] : = 33 ; _________

_________________________________

brojevi [j / 2] : = 33 ; _________

_________________________________

brojevi [j - 3] : = 33 ; _________

_________________________________

znakovi : = 'Yorkie' ;

_______

_________________________________

znakovi : = "Yorkie" ; ________

_________________________________

znakovi : = 'Ana' ;

_________________________________

slika 22. Primjeri zadatka

_________

ispravno i neispravno deklariranih varijabli

Sada se vri provjera ispravnosti rjeenja. Tek nakon uspjeno rijeenog zadatka moe se
prijei na novi .
Rjeenja za ovaj primjer bila bi:

67

Ako deklariramo smo varijable brojevi, x i znakovi na slijedei nain:

var
brojevi, x : array [-3 .. 3] of integer;
znakovi : array [1 .. 5] of char;
j : -1 .. 2;

Koje su od sljedeih naredbi dodjele pravilne, a koje nisu. Ako nisu objasni
zato!?
brojevi [j + 1] : = 33 ; ispravno

_________________________________

brojevi [j / 2] : = 33 ; neispravno

indeks ne moe biti realan broj

brojevi [j - 3] : = 33 ; neispravno

indeks je izvan doputenog podruja

znakovi : = 'Yorkie' ; ispravno

_________________________________

znakovi : = "Yorkie" ; neispravno

navodnici moraju biti jednostruki

znakovi : = 'Ana' ;

broj dodijeljenih znakova mora biti pet

neispravno

slika 23. Rjeenja zadataka


U slijedeem koraku pokazujemo primjere ispravnih i neispravnih deklaracija varijabli:

68

Ispravno deklarirane varijable:

Neispravno deklarirane varijable:

1. primjer

1. primjer

const n = 50;

var

var

niz: array [1 .. n] of char;

niz: array [1 .. n] of char;

Objanjenje: vrijednost n nije poznata

2. primjer

2. primjer

var

var

niz: array [ boolean ] of integer;

niz: array [ 1 .. 3.2 ] of char;

Objanjenje: indeks ne moe biti realan broj


3. primjer

3. primjer

var

var

niz: array [1 .. 6 ] of real

niz: array [1 ... 6 ] of char;

Objanjenje: tri tokice umjesto dvije

slika 24. Ispravno i neispravno deklarirane varijable

Nakon uspjenog rjeenja prethodnih zadataka prelazimo na novu nastavnu jedinicu, a to je:

Uitavanje i ispis jednodimenzionalnog niza


Kao preduvjet usvajanja ovih znanja je znanje o koritenju programskih petlji.

69

Zadatak je: Za zadani prirodni broj n<20 uitati, a


zatim ispisati niz od n cijelih brojeva!

Program upis_ispis;
var n, i : integer;
niz: array [1..20] of integer;
begin
write (' upisite broj elemenata niza: ');
readln (n);
writeln;
for i:= 1 to n do
begin
write ('upisite ', i, '. element niza: ');
readln (niz[i]);
end;
writeln;
for i:=1 to n do
writeln (i, '. komponenta niza je: ', niz[i]);
readln;
end.

slika 25. Program koji uitava i ispisuje n zadanih elemenata niza

Testiranjem programa dobili smo slijedee:


upisite broj elemenata niza: 9
upisite
upisite
upisite
upisite
upisite
upisite
upisite
upisite
upisite

1. element niza: 12
2. element niza: 13
3. element niza: 14
4. element niza: 15
5. element niza: 4
6. element niza: 5
7. element niza: 6
8. element niza: 7
9. element niza: 25

1. komponenta niza je: 12


2. komponenta niza je: 13
3. komponenta niza je: 14
4. komponenta niza je: 15
5. komponenta niza je: 4
6. komponenta niza je: 5
7. komponenta niza je: 6
8. komponenta niza je: 7
9. komponenta niza je: 25

slika 26. Rezultat izvrenja programa upis_ispis

Nakon toga zadati zadatak:

70

Uitati prirodni broj n ( n<20 ), ispisati zadani niz i kvadrate elemenata niza. Rjeenje
usporediti sa rjeenjima test-primjera.

TES TNI PO DAC I:


unesi broj elemenata niza < 20: 5
a[1]=2
a[2]=3
a[3]=4
a[4]=5
a[5]=6
IZLAZNI PODACI:
Uneseni niz sa svojim kvadratima je:
24
39
4 16
5 25
6 36

slika 27. Testni podaci za program nizovi_1

Nakon rjeavanja, program bi trebao izgledati ovako:


program nizovi_1;
var i,s,n:integer;
a:array[1..100] of integer;
begin
write ('unesi broj elemenata niza < 20: ');
readln(n);
writeln;
for i:=1 to n do
begin
write('a[',i,']=');
readln(a[i]);
end;
writeln;
writeln('Uneseni niz sa svojim kvadratima je:');
writeln;
for i:=1 to n do
begin
writeln(a[i],' ',a[i]*a[i]);
end;
writeln;
readln;
end.

slika 28. Program koji ispisuje uitani niz i kvadrate njegovih elemenata

71

Kada se uspjeno rijeio zadatak, prelazimo na novu nastavnu jedinicu, jednu razinu vie, i
pokazujemo kako se trai najmanji i najvei element uitanog niza, te kako niz sortirati
uzlazno
.
Pokazujemo slijedei primjer:
program nizovi_2;
var i,n,max,min,p:integer;
a:array[1..100] of integer;
begin
write('unesi broj elemenata niza ');
readln (n);
for i:=1 to n do
begin
write ('a[',i,']=');
readln(a[i]);
end;
max:=a[1];
min:=a[1];
for i:=1 to n do
begin
if a[i]>max then
max:=a[i];
if a[i]<min then
min:=a[i];
end;
writeln('Najveci element niza je ',max,' a najmanji ', min);
readln;
for i:=1 to n-1 do
for j:=i+1 to n do
if a[i]>a[j] then
begin
p:=a[i];
a[i]:=a[j];
a[j]:=p;
end;
writeln('Sortirani niz je: ');
for i:=to n do
write(a[i], ' ' );
readln;
end.

slika 29. Program kojiza uitani niz ispisuje max, min i sortira ga uzlazno

Podaci koji nam slue za testiranje programa dani su na slici 30.

72

Testni podaci su:


unesi broj elemenata niza 5
a[1]=2
a[2]=6
a[3]=7
a[4]=4
a[5]=12
Najveci element niza je 12 a najmanji 2
Sortirani niz je:
2 4 6 7 12

slika 30. Test primjeri za prethodni program

Nakon ovoga slijedi zadatak, a on je slijedei:


Uitati niz prirodnih brojeva i sortirati ga silazno!
Kada se uspjeno rijeio ovaj zadatak prelazimo na razinu vie i pokazujemo rad sa
viedimenzionalnim nizovima. Pokazujemo to su viedimenzionalni nizovi, a poseban
naglasak dajemo na dvodimenzionalne nizove matrice i definiramo mnoenje matrica (kao u
poglavlju 2.4.3.)
U novoj nastavnoj jedinici pokazujemo primjer mnoenja dviju matrica. (kao u prethodnom
poglavlju slika 17. ), kao i testne primjere.
Zadatak je Postavljamo novi zadatak:
Za uitanu kvadratnu matricu A, reda n i prirodni broj p ispisati matricu Ap .
Provjeriti test podacima.

Zadatak
Sloeni tipovi podataka u programskom jeziku Pascal - Nizovi

Primjer realizacije programirane nastave razgranati model


Koritenje Berginovih pedagokih obrazaca "Tool Box", "Spiral", "Gold star"
Didaktiki pristup: Znakovna skala
Ovakav model bi se mogao realizirati na nain da se nastavni sadraji , predvieni za obradu
zadane teme,realiziraju tako da se najprije izloi nastavno gradivo, aonda se to potkrijepi
primjerima. Nakon primjera slijedi zadatak iz te cjeline. Razgranati model bi omoguio da se

73

prijee na rjeavanje zadataka neke nastavne cjeline, a da se nisu nuno "prouile" sve
nastavne jedinice, koje su prethodile zadatku. Tek uspjenim rjeavanjem izabranog zadatka
moglo bi se pristupiti izboru novog zadatka, u suprotnom bi se trebalo vratiti na potpuno
prouavanje prethodne nastavne jedinice. Berginov obrazac "Tool Box", bi omoguio da se
uvijek prethodno steeno znanje koristi u novim nastavnim sadrajima, obrazac "Spiral", da
produbljujemo znanje loginim redoslijedom (u dubinu), te da povezujemo nastavne teme.
Obrazac "Goldstar" bi trebao uenicima dati poticaj, tako da dobiju pohvalu za svaki ispravno
rijeen zadatak. Didaktiki pristup, kao jedan od moguih pristupa, pretpostavlja da su uenici
savladali elemente i sintaksu programskog jezika u kojem programiraju, zatim semantiku, a
nakon toga slijedi kreiranje programa.
Jedan dio ovog modela bi smo mogli jednostavno prikazati jednim dijagramom:

74

IZABRANA
NASTAVNA JEDINICA

DA
MODULI
TEORIJE

ELITE LI
TEORETSKI
DIO?

NE

ELITE LI
PRIMJERE?

DA

MODULI S
PRIMJERIMA I
TEST PODACIMA

NE

1
RJEAVANJE
ZADATAKA

DA
ZADATAK

NE

USPJENO
RIJEEN
ZADATAK

DA

NE
POHVALA
IZLAZ IZ OVE
NASTAVNE JEDINICE

DA

ELITE
POKUATI
PONOVO?

slika 31. Dijagram razgranatog modela

75

3 KATEGORIZACIJA PRISTUPA
Prethodno navedeni didaktiki pristupi mogu se realizirati uz pomo alata za pouavanje
programiranja, pa ih tako moemo kategorizirati i na sljedei nain:
Predavanja i vjebe
Vizualizacija software-a

Vizualizacija programa
Animacija algoritama
Vizualno programiranje
Roboti
Uenje zasnovano na problemima
Kognitivno tutorstvo programirana nastava
Ostalo

3.1 Predavanja i vjebe


Ovo je tradicionalni pristup. Predavanja obino pokrivaju objanjavanje osnovnih koncepata i
praena su odgovarajuom literaturom, a vjebe su tu da se praktino napravi i ono to se
nauilo na predavanjima. Postavlja se problemska situacija koja se mora rijeiti u zadanom
programskom jeziku. I ova metoda ima svojih prednosti, ali i nedostataka. Neke od prednosti
njenog koritenja su slijedee:

Kada cilj nije samo nauiti neke informacije

Kada je potrebno dugorono memoriranje pojmova

Kada je gradivo koje obraujemo sloen, detaljan ili apstraktno

Kod uenje analize i sinteze

Prihvaena je injenica da uenici smatraju programiranje tekim i potrebno je mnogo rada da


se odmakne od ovog tradicionalnog pristupa prema aktivnijem i privlanijem nainu
pouavanja. Tako se dolo do zakljuka da tradicionalni pristup u pouavanju programiranja
vodi do brojnih problema, a to su:

Pasivni stil uenja

76

Prevelik naglasak na jezinu formu nasuprot funkcijama

Preuranjenu kompleksnost

Preuranjenu apstraktnost

Tradicionalni pristup namee neka pravila koja ograniavaju prirodne vjetine rjeavanja
problema.
Ipak, ovaj pristup je i dalje najraireniji, a neto inovativniji predavai nastoje integrirati u
njega nove alate i tehnike s ciljem da unaprijede ueniko iskustvo uenja.

3.2

Vizualizacija software-a

Vizualizacija software-a je prenoenje apstraktnih ideja koje se javljaju u kodu u vizualne


prikaze koji e bolje i jednostavnije pokazati rad nekog sustava. Ona pomae programeru ili
korisniku programa da shvati to se u programu dogaa. Ovo je relativno novo podruje
razvoja i postoje okruenja razvijena za profesionalce, kao i ona s instrukcijskim alatima za
poetnike.
Vizualizacija software-a se dijeli na:

Vizualizacija programa
Ona je usmjerena je na razumijevanje koda. Fokusira se na grafikim predstavljanjima.

Animacija algoritma
Pokazuje osnovne operacije nekog algoritma.

Vizualno programiranje
Koristi vizualne komponente za izradu programa.

Programiranje demonstracijom
Ovi sustavi su vie u podruju umjetne inteligencije i programskih jezika gdje se

programiranje odvija korak po korak dok je raunalo svjesno tih koraka.

Raunska vizualizacija
Bavi se prikazom statistikih podataka u obliku dijagrama.

Alati za vizualizaciju mogu pomoi profesorima informatike na mnogo naina, od privlaenja


panje uenika do njihovog angairanja u sloenim vjebama.

Prednosti koritenja alata za vizualizaciju:

77

Ovi alati imaju niz prednosti nad tradicionalnim nainima uenja programiranja, a to su:

Objanjavanje sloenih principa pomou slika

Veina uenika bolje razmilja vizualno

Predavai mogu obraditi vie materijala u manje vremena jer su prezentacije jasnije

Dobra vizualizacija moe poveati razumijevanje uenika

Motivira uenike doputajui opcionalne zadatke da izazovu naprednije uenike i


dopuste samostalno istraivanje

Koritenje slika i animacija kao edukacijska pomo je danas prihvaena praksa. Vizualizacije
se koriste da razjasne kompleksne koncepte i da omogue uenicima da razviju mentalne
modele o koracima koji se odvijaju u programu. Uenici imaju razliite stilove uenja, a veina
njih najbolje razmilja vizualno. Cilj uspjene vizualizacije je da razviju alate koje uenici
mogu kontrolirati, koji aktivno ukljuuju uenika i koji daju odmah povratnu informaciju. Ovi
ciljevi se poklapaju s principima konstruktivizma, za kojeg je znanje aktivno stvarano od strane
studenta, a ne pasivno apsorbirano iz knjiga i predavanja.

3.2.1 Vizualizacija programa

Ova vrsta vizualizacije usmjerena je na grafiku prezentaciju izvravanja programa. Podaci i


dogaaji su vizualizirani, nivo apstrakcije se smanjuje, a uloga korisnika programa iz pasivne
prelazi u aktivnu. U ovom podruju razvijeno je nekoliko alata:

Alice
Alice je 3-D objektno-orijentirano interaktivno okruenje, namijenjeno Windows operativnim
sustavima, za animiranje i grafiki prikaz stanja programa. Baziran je na Java programskom
jeziku i u prvom redu slui za kreiranje 3D animacija objekata vlastitog virtualnog svijeta. Na
taj nain pomae poetnicima u uenju stvaranja i debagiranja programa. Alice je nastala na
Carnegie Mellon University, pod vodstvom Randy Pauscha, a osnovna ideja razvoja ovakvog
programskog okruenja bilo je pribliiti svijet programiranja poetnicima. ( Alice je dostupna
na adresi www.alice.org)

78

slika 32. Alice

Kako bi se izbjeglo zamorno upisivanje koda i pritom zbunjujue debagiranje pri nastajanju
pogreki u kodu, tvorci ovog programa omoguili su korisniku programiranje na principu
prijenosa elemenata ( engl. Drag-and-drop) iz ve postojeih baza.
Najvea pomo pri programiranju, u Alice programskom okruenju, su predloci za
uenje (engl. Tutorial).

slika 33. Alice- poetak Tutoriala

Predloci su kreirani tako da poetniku omoguuju interakciju sa


programom te pratei njegove upute dolaze do saznanja o mogunosti programa.
Pomou predloaka program se obraa korisniku koristei oblaie uputa na engleskom jeziku
koje navode korisnika gdje treba kliknuti, iz kojeg izbornika to izabrati i to gdje smjestiti

79

kako bi se postigao unaprijed naznaen dogaaj u programu.


Na taj nain se omoguuje jednostavnije shvaanje funkcija unutar ovog programskog
okruenja i tako se izbjegavaju problemi u njegovom izvrenju.

slika 34. Alice dio Tutoriala

Takoer, postoje primjeri ve gotovih programa koji potiu kreativnost kod korisnika pri
razvoju Alice virtualnog svijeta.
Alice se u prvom redu bavi animiranjem 3-D objekata i njihovim ponaanjem u malom
virtualnom svijetu. Za vrijeme izvravanja programa nastali objekt se pokree naredbama s
mia ili tastature. Naredbe mogu biti one za pomicanje objekata ili njegove fizike promjene,
kao to su: pomicanje, rotacija ili unitenje objekta. Mogu se napraviti petlje i nizovi naredbi,
npr. programirati zeia da skakue dio puta postajui pritom nevidljiv i vidljiv. Alice
podrava funkcije, koje se najee koriste u rekurzijama, petljama, implementaciji interakcija
putem dogaaja, odluke.
Uvoenjem i koritenjem Alice pokazalo se da je poetnicima tipkanje teko tj. da poetnici
cijene kontrole miem i dijaloge, a problemi u 3-D percepciji su manji tj. mali postotak ih ima
problema sa dubinom objekta.

80

JKarelRobot
Ovaj alat nastao je irenjem koncepta programa Karel the Robot, kojeg su 2001. g. razvili Buck
i Stucki.

slika 35. Jkarel The Robot

Karelov svijet je vrlo jednostavan; robot se kree ulicama (plava strelica u donjem lijevom
uglu), skuplja novie (engl. Beepers), nailazi na zidove i zaobilazi ih. Korisnici u vrlo
jednostavnom okruenju daju naredbe Karelu, postavljaju zidove i premjetaju ih uei tako
osnovne principe proceduralnog programiranja, ali i osnove objektno-orijentiranog pristupa,
to je jedna od glavnih prednosti ovog alata.
Autori su animirali Karelove korake i objekte da budu to polaganiji tako da korisnik moe
vidjeti robotove akcije, a ne samo poetak i kraj instrukcije.

JkarelRobot - Svijet
Pri samom pokretanju ovog programa, JkarelRobot programsko okruenje nam nudi Svijet u
kojem postavljamo samog robota (strelicu koja se nalazi u donjem lijevom uglu prozora),
zidove (klikom na bijeli kvadrati izmeu dva siva), novie (postavljajui zeleni kvadrati
na bijelo polje i u kutu Corner Beepers unosimo koliko novia elimo na tom polju).

81

slika 36. Jkarel The Robot

82

JkarelRobot Program

slika 37. Jkarel The Robot dio programa

Prije samog unosa programa potrebno je oznaiti u kojem programskom jeziku emo pisati
kd za JkarelRobot. Nakon toga kliknemo dugme ''New'' kako bi nam JKarelRobot
kreirao poetak i kraj programa te poetak i kraj kda za izvrenje (kao to je prikazano na
slici). Nakon to smo unijeli kdove potrebno je kompajlirati program pritiskom na dugme

''Compile'' kako bi JkarelRobot provjerio sintaksu unesenog kda.


Ukoliko je sintaksa uspjeno napisana, JKR e s lijeve strane kreirati grafiki prikaz naredbi

JkarelRobot Izvrenje
Nakon to smo unijeli kd programa i kompajlirali program, moemo krenuti na izvrenje
koda. To radimo klikom na dugme ''Execute''

83

slika 38. Jkarel The Robot izvrenje programa

Nakon to smo kliknuli na dugme za incijaciju programskog kda, s lijeve strane prozora
moemo vidjeti kompajlirani kd programa, a s desne prozor u kojem se prikazuje JkarelRobot
svijet. Veoma je vano to korisnik moe istovremeno promatrati pokretanje robota po
zadanom svijetu kao i to koji se kd upravo izvrava, a ako je sintaksa naredbe netona
studentu se daje povratna informacija.
Autori su animirali Karel-ove korake i okrete da budu to polaganiji tako da studenti mogu
vidjeti robotove akcije, a ne samo poetak i kraj instrukcije.
Buck i Stucki su dodali Boolean logiku i procedure i planiraju u budunosti ukljuiti
rekurzije.i. Autori vjeruju da Bloom-ova taksonomija omoguuje osnove za to efikasniju
pedagogiju posebno u prepoznavanju tema, vjebi i postignua.
Materijali o Karelu su dostupni na adresi: http://math.otterbein.edu/JKarelRobot

JKarelRobot je edukacijski alat, baziran na Bloom-ovoj taksonomiji kao vodeem principu,


vjerujui da ona omoguuje osnove za to efikasniju pedagogiju posebno u prepoznavanju

84

tema, vjebi i postignua.Ova pedagogija lei na temeljima osnovnih struktura kognitivnog


razvoja koje opisuje Bloom.
Autori su proirili Karel u dva smjera, jedan da direktno podrava primitivne nivoe
kognitivnog razvoja, i drugi da naue vie koncepata i podre vie kurikuluma. JKarelRobot je
napisan u Java programskom jeziku i podrava pouavanje u Pascal, Java i Lisp sintaksi.
kako ga izvrava, a ako je sintaksa naredbe netona studentu se daje povratna informacija.
Buck i Stucki su dodali Boolean logiku i procedure i planiraju ukljuiti rekurzije u budunosti.
Autori vjeruju da Bloom-ova taksonomija omoguuje osnove za to efikasniju pedagogiju
posebno u prepoznavanju tema, vjebi i postignua.
Materijali o Karelu su dostupni na adresi: http://math.otterbein.edu/JKarelRobot

Prednosti koritenja vizualizacije programa


Koritenje vizualizacije u procesu uenja programiranja, bez obzira na odabir metodikog
modela, ima niz prednosti:

Vizualizacije zaokupljaju uenike.

Software-ski alati koji omoguuju animirane i vizualne poglede su korisni.

Uenici mogu kontrolirati alat i biti u interakciji s njim.

Imaju mogunost mijenjati kod i brzo vidjeti animirane rezultate, odravati interakciju i
uiniti program jednostavnim za debugiranje.

Uenici mogu vidjeti poloaje u 3-D svijetu i olakan je nain shvaanja lokacije i
orijentacije objekata u svijetu.

3.2.2 Animacija algoritma

Veliki dio vremena i istraivanja je potroen na razvijanje animiranih sustava za uenje


algoritama u okviru raunalnih znanosti.
Animacije algoritma slue za vizualizaciju svih operacija tog algoritma, a ne samo odreenog
koda ili podataka. To su openiti alati, gdje korisnik odluuje to eli vizualizirati. Nivoi

85

apstrakcije se takoer mogu birati. Nivo interakcije korisnika definiraju programeri, a moe ii
od pasivnog korisnika da visokog stupnja interakcije. Prvi alat za vizualizaciju algoritma,
BALSA, je razvio Mark Brown u ranim osamdesetima, i svi alati s idejom vizualizacije
programa su potekli od njega. Animacije algoritama sortiranja seu nazad u 1981 kada je video
Sorting out Sorting prikazan na SIGGRAPH. Pokazani su razliiti algoritmi sortiranja da
pomognu studentima razumjeti nain na koji rade te da ih mogu usporediti jedan s drugim.
Od tada je razvijeno mnogo sustava za animaciju algoritama.

Interactive Dana Structure Visualisations


Jedan od njih, na primjer na stranici http://nova.umuc.edu/~jarc/idsv/ univerziteta u
Marylandu. Tu su interaktivne animacije i primjeri vizualizacije algoritama.

slika 39 Poetna stranica IDS Visualisations

Na poetnoj stranici nalazi se izbor razliitih vrsta animacije algoritama sortiranja nizova,
pretraivanja i sortiranja binarnih stabala i grafikih prikaza.
Odabirom npr. jedne metode sortiranja, u ovom sluaju, quick sort dobivamo nesortirani niz.
Moemo odabrati elimo li pogledati demonstraciju primjera, ili elimo sortirati sami. Ukoliko
pogrijeimo, dobivamo informaciju o tome i mogunost da to uinimo ispravno.

86

slika 40 Poetni, nesortirani niz

Na svakom dugmetu (funkciji) postoji pomo koja nam objanjava to i kako pojedina
funkcija radi.Ukoliko elimo moemo pratiti sortiranje korak po korak, pritiskom na dugme
step. Nesortirani elementi niza obojani su plavom bojom, a oni sortirani crvenom.

slika 41. Algoritam za vrijeme sortiranja

Nakon niza koraka, koje vizualno pratimo, vidimo kako algoritam radi i konano , dobivamo
sortirani niz.

87

slika 42 Konani, sortirani niz

JHAVE- Java hosted Algorithm Visualisation Environment


JHAVE je klijent server okruenje za prikaz animacije algoritma preko weba. Razvili su ga
Tom Naps, James Eagan i Laura Norton, na Sveuilitu Wisconsin Oshkosh, u cilju
olakavanja uenja sloenih algoritama.
JHAVE program se pokree s Interneta, a dostupan je na stranici http://jhave.org . Korisnik
bira algoritam koji eli, a usporedno s animacijom prikazuje se i programski kod i oznaava
liniju koja se trenutno izvodi.

slika 43 Procedura za algoritam pretraivanja

88

slika 44 procedura za algoritam pretraivanja pseudokod programa

Za to vrijeme raunalo postavlja pitanja korisniku i to svakih nekoliko koraka to e se


slijedee dogoditi. (stop and think questions).

slika 45 Postavljeno pitanje prilikom animacije algoritma

89

slika 46 Animacija algoritma opirni opis postupka

Zavrni korak ovog algoritma je:

slika 47 Animacija algoritma - pseudokod

90

Ovako bi izgledali koraci animacije algoritma bubble sorta. Sa desne strane nalazi se
programski kod na kojem je crvenom bojom naglaena instrukcija koja se trenutno izvodi.

slika 48 Animacija algoritma bubblesort - pseudokod

Moemo dobiti i informaciju o tome kako taj algoritam radi pritiskom na tipku Info:

slika 49 Animacija algoritma bubblesort opis postupka

91

Nakon nekoliko koraka dobili smo i ptanje na koje moramo odgovoriti:

slika 50 Animacija algoritma bubblesort pseudokod

I tako do kraja izvrenja ovog algoritma


Autori JHAVE programa, su za primjenu vizualizacije u pouavanju programiranja, doli do
saznanja da ovakav nain uenja nije efikasan ako je uenik pasivan. Ujedno i samo pokretanje
programa za vizualizaciju nije dovoljno ukoliko nije popraeno i uiteljevim objanjenjem.
im se od uenika trai da aktivno sudjeluju u nastavi i postignuti rezultati su puno bolji. U
tome im znaajno pomae vizualizacija kao alat kojim stvaraju predodbe onoga to vide.

Rezultati koritenja animacije algoritma


Koritenje vizualnih orua u procesu uenja programiranja ima niz prednosti, a to su:

Animacije zaokupljaju uenikovu motivaciju

Koritenje ovih alata pomae studentima u uenju i razumijevanju algoritama

92

Veina alata lako je dostupna preko Weba

Neki alati doputaju usporeivanje algoritama

Alati koji paralelno s animacijom imaju i tekstualno objanjenje poveavaju


razumijevanje

Mogunost nekih alata da postavljaju pitanja za vrijeme izvoenja animacije


omoguava dublje razumijevanje jer ta pitanja potiu studenta da aktivno prati nastavu

Neki alati omoguuju vraanje koraka unatrag, pa ukoliko neni kokrak nije jasan, moe
se ponovo analizirati

Dostupni su na Internetu, a ovo su samo neke od stranica na kojima se mogu nai


vizualizacije algoritama:

http://www.solidware.com/sort/

http://cg.scs.carleton.ca/~morin/misc/sortalg/

http://homepages.dcc.ufmg.br/~dorgival/applets/SortingPoints/SortingPoints.html

http://www.cs.fiu.edu/~weiss/Shellsort.html

http://www.educypedia.be/education/mathematicsjavasorting.htm

http://research.cs.queensu.ca/home/cisc121/

http://web.engr.oregonstate.edu/~minoura/cs162/javaProgs/sort/SelectSort.html

3.2.3 Vizualno programiranje


Vizualno programiranje znai koritenje vizualnih komponenti za konstrukciju programa.
Postoje mnogi alati za vizualno programiranje koji se koriste u pouavanju:

Visual Basic
Visual Basic je veoma popularan programski jezik u SAD-u, ali ne koristi se toliko esto u
procesu pouavanja . Kao razlog za to se navodi da je vie "temeljen na objektima" (objectbased) nego objektno-orijentiran, a i radi samo na Windows platformama. No iako ne moe
zamijeniti tradicionalne jezike, poput Jave ili C++, svi se slau da je vaan dio modernog
informatikog kurikuluma. Oni koji ga koriste pri pouavanju utvrdili se da mu se uenici vrlo
lako prilagoavaju i rado ga koriste, te uenici koji su se prije borili sa osnovnim pojmovima
programiranja sada su bili uspjeni pri koritenju Visual Basic-a.

93

3.3

Roboti

Istraivanja Marie Montessori4, koja smatra da djeca bre ue kroz prouavanja i istraivanja,
zatim Piageta koji argumentira da se znanje gradi kroz konkretne operacije i Paperta koji
sugerira da se apstraktno razmiljanje ne bi smjelo vidjeti kao neto superiorno nad
konkretnim, dovodi do zajednikog zalaganja za uenje kroz fiziku aktivnost, konkretno prije
apstraktnog. Te misli su prihvatili mnogi istraivai u svijetu raunarstva i iz tog razloga
konstruirali robote za poduavanje. Ideja potjee jo iz ezdesetih godina sa Karel the Robot.
Pokazalo se da je aktivno uenje u interakciji sa okruenjem, nasuprot predavanjima, mnogo
djelotvornije pri razvijanju uenikih sposobnosti stjecanja znanja.

Rezultati koritenja robota


Koritenje robota u procesu uenja programiranja ima niz prednosti, a to su:

Potiu aktivno uenje, privlae studente i potie entuzijazam i uenje

Potiu suradnju i roboti postaju dio u ovoj suradnji

Potiu iskustvo sa stvarnim strojevima

Potiu kreativnost

Studenti mogu postavljati hipoteze te ih testirati, pri tom dobivaju odmah povratnu
poruku

Promiu dobar dizajn i planiranje

MARIA MONTESSORI (1870 - 1952) prva ena lijenica u Italiji. Studirala je psihologiju, filozofiju i antropologiju. Montessori
sustav se zasniva na filozofiji razvoja djeteta prema kojoj pojedinac stjee operativna znanja u podrujima ivota u kojima e
sudjelovati kao odrasla osoba.

94

3.4

Kognitivno tutorstvo

Ovo je metoda koja ukljuuje promatranje radnji koje tutor (u ovom sluaju - profesor) obavlja,
i vjebu, Najprije uz pomo tutora, a kasnije samostalno. Metoda je karakterizirana injenicom
da se program odvija u socijalnom okruenju, pa se problemi se odabiru na pedagokim
osnovama. Uenje je naglaeno kontekstom materije koja se ui tako da se znanje moe
primijeniti u drugim podrujima. Na taj nain se ue procesi potrebni za uspjeno
programiranje. Tutor moe biti profesor u uionici, (bolje u to manjim grupama) ili virtualni
tutor. Razvojem web tehnologija inteligentno tutorstvo postaje sve rairenije i dostupnije.
Projekt na University of Nort London je usmjeren na razvoj skupa pedagokih tehnika za
uenje objektno orijentiranog programiranja i razvoj multimedijskog okruenja za uenje
baziranog na tim tehnikama. Ovaj pedagoki pristup za okruenje je baziran na
konstruktivizmu i kognitivnom tutorstvu. Boyle tvrdi da su dva znaajna izazova za uenike
objektno orijentiranog pristupa, apstrakcije i kompleksnost. Tvrdi da njegovo okruenje za
uenje pokuava savladati apstrakciju koristei konkretno vizualno predoavanje, a
kompleksnost se prevladava osiguravanjem mehanizama, asistenta koji osigurava strunu
pomo, upute ili demonstracije.

Rezultati koritenja kognitivnog tutorstva


Koritenje kognitivnog tutorstva u procesu uenja programiranja ima slijedee prednosti:

Unapreuje meta-kognitivne osobine

Strunjak ima odmah uvid u tekoe studenta i moe ih na vrijeme ispraviti

Student ima povratnu informaciju o svom radu

Potie suradnju i razvoj socijalnih vjetina

Dostupnost alata na Web-u olakava razvoj kognitivnog uenja

Potie razvoj komunikacije i suradnje

Osnovna naela kognitivnog tutorstva usko su povezana sa konstruktivistikim, studenti


izgrauju svoje vlastito znanje, u poetku voeni strunjakom da bi kasnije postali sasvim

95

neovisni. Aspekt suradnje i razvoj meta-kognitivnih osobina se reflektiraju u njegovom radu.


Socijalni aspekt uenja, kako objanjava Vigotski, je sastavni dio modela kognitivnog
tutorstva.

3.5 Ostalo
Postoji jo mnogo pristupa i pokuaja da se poduavanje programiranja uini to uspjenijim.
Svakodnevno se na razliitim sveuilitima razvijaju nove metode, kombiniraju rad u parovima
i grupama s brojnim alatima dostupnim na webu, ili se pak ti alati kombiniraju i usavravaju u
cilju prilagoavanja odreenoj grupi studenata. Treba uvijek imati na umu i da su studenti
razliiti, te da imaju razliite interese i ciljeve i da nee uvijek jedna metoda odgovarati svima.

Koji god pristup za pouavanje programiranja odabrali potrebno je bazirati kolegij na


pedagokoj podlozi, imajui na umu one koje poduavamo i razliitost stilova uenja,
sposobnosti i predznanje koje posjeduju.

96

4 NAUNA ISTRAIVANJA U OBLASTI PRIMJENE


VIZUALIZACIJE U NASTAVI

Iz dostupnih istraivanja moemo zakljuiti da uenje programiranja predstavlja problem


jednom dijelu uenika. Zato se aktivno istrauje pouavanje i uenje programiranja, sa ciljem
unapreenja i postizanja boljih rezultata.
Kao rezultat toga, razvijeni su mnogi pristupi, te je razvijena tehnologija koja ukljuuju
koritenje programskih vizualizacija, razvoja alata i robota do obrazovnih paradigmi kao to su
uenje zasnovano na problemima, kognitivnog tutorstva. Do sada se veina pristupa ini bitno
razliitima u odnosu na tradicionalna predavanja i vjebe. Do danas najvie istraeni pristupi
su vizualizacije programa.
Wilson & Aiken su razmatrali nekoliko sustava animacija algoritama i njihovo koritenje u
obrazovanju u raunalnim znanostima s ciljem da odrede kako ovi sustavi mogu pridonijeti
efikasnom pouavanju.
Sustavi vizualne animacije se koriste sve vie u razredu.. Wilson & Aiken istiu da su
potrebne upute za razvoj i koritenje animacija kao alata, u cilju to efikasnijeg pouavanja.
Neki oblici vizualizacije, slike ili animacije, bi se trebali koristiti u pouavanju koncepata i
algoritama u raunarstvu, a izbor vizualizacije ovisi o temi. Slike su prikladne kada je koliina
podataka mala i struktura podataka jako jednostavna, a animacije se mogu koristiti kada je
koliina podataka velika i struktura podataka kompleksna ili kada je potrebno kretanje da se
pokau veze izmeu objekata koje se mijenjaju u vremenskom periodu. Naps tvrdi da se
vizualizacije mogu koristiti pri demonstracijama u razredu, laboratorijima i tradicionalnom
pouavanju gdje uenici pasivno promatraju ili aktivno sudjeluju, individualnom ili grupnom
radu. On iznosi dokaze da aktivni angaman studenta dovodi do poveane motivacije i boljeg
razumijevanja konteksta.
Iz ovoga se moe zakljuiti da animacije algoritama ine "teke" algoritme pristupanijima i
manje stranima to vodi poveanju uenike interakcije sa materijalima, te im olakava
uenje.

97

Izgleda da se svi istraivai slau s tim da vizualizacije moraju biti interaktivne i treba biti
podrana sa to vie tekstualne dokumentacije, te da e one biti veoma vrijedne tek ako
studenti aktivno sudjeluju.
Naunici zagovaraju stav da se dinamike vizualizacije koriste to vie kao potpora uenju u
tipinoj razrednoj organizaciji nastave.
Nain na koji uenici koriste vizualizaciju se rangira od, ne koriste izravno vizualizaciju,
izgradnja vizualizacija za domai rad, kao alati dostupni za izgradnju vlastitih vizualizacija
gdje se nikoga ne pita da prezentira svoju vlastitu izgradnju. Najea uporaba vizualizacija,
prema jednom izvjetaju, utvruje da studenti gledaju vizualizaciju u razredu (90%), zatim
koritenje vizualizacije na vjebama (72%). Ova uporaba je uglavnom upotpunjena sa
pitanjima razreda (52%) i pisanjem otvorenog tipa eseja (45%). U nastavi dinamike
vizualizacije se najee koriste kod struktura podataka i u uvodnim kolegijima iz
programiranja. Istraivanja pokazuju koristi onih koji su iskusili rad s vizualizacijom.

Rezultati pokazuju da su profesori raunalnih znanosti uvjereni da vizualizacije mogu unijeti


promjene u pomaganju studentima da bolje naue koncepte.

98

5 ZAKLJUAK
U akademskoj zajednici vlada miljenje da je programiranje teko. Kako bi se to rijeilo,
istraivai trae alternativne pristupe tradicionalnom nainu pouavanja i koritenja predavanja
i vjebi za pouavanje programiranja. Istraivanja imaju pedagoku podlogu, razliite varijante
konstruktivizma. Nedostaju, ipak, konkretni dokazi o velikoj prednosti koritenja bilo kojeg
pojedinanog modela pouavanja. Jedino za vizualizaciju algoritama postoje empirijski dokazi
o veim efektima pouavanja.
Novi pristupi se uvode sporo, a planovi i programi se esto mijenjaju, pa moemo zakljuiti da
je potrebno izvjesno vrijeme da se nastavni program prilagodi novom pristupu.
Bez obzira na alat ili pristup koji emo koristiti prihvaeni su slijedei aspekti uinkovitog
alata ili pristupa:

Ukljuiti uenike u aktivno uenje

Dopustiti uenicima odreen stupanj kontrole nad njihovim uenjem omoguavajui


napredovanje i ispitivanje vlastitih sposobnosti

Osigurati pravovremenu povratnu informaciju

Koritenje suradnje

Ujedinjenje mehanizama za samoanalizu koji unapreuju metakognitivne i samostalne


vjetine uenja

Osigurati viestruku prezentaciju koncepata, tekstualnu, vizualnu i auditivnu

Veina alata zasnovanih na tehnologiji je usmjerena na vizualizaciju postojeih


programa/algoritama, a samo nekoliko je usmjereno na programere poetnike koji pokuavaju
doi do potrebnog rjeenja/programa.
Iz svega se jo moe zakljuiti da ni za jedan didaktiki i metodiki model i pedagoki obrazac
ne moemo rei da je apsolutno najbolji ili da je lo. Svaki je manje ili vie primjenjiv u
odreenim situacijama i nad odreenim problemima. Kvalitetno i uspjeno pouavanje trai od
nastavnika koritenje razliitih metoda kako bi u danim okolnostima postigao maksimalni
rezultat od uenika koje pouava.

99

LITERATURA

[1.] Dr Tomislav Grgin, Edukacijska psihologija, Naklada Slap, 1997.


[2.] Klafki, Schulz, Von Cube, Moller, Winkel, Blankertz, Didaktike teorije, EDUCA 1993.
[3.] Kathleen Jensen, Niklaus Wirth , Pascal - prirunik, , Mikro knjiga Beograd
[4.] Jens J. Kaasbll , Exploring didactic models for programming
[5.] Raymond Lister - University of Technology, Sydney Broadway, NSW, Australia ; Elizabeth S. Adams -

James

Madison University, Harrisonburg, VA ; Sue Fitzgerald - Metropolitan State University, St. Paul, MN; William Fone Staffordshire
University, Stafford, ST, United Kingdom ; John Hamer -University of Auckland, Auckland, New Zealand; Morten Lindholm - Aarhus
University, Aarhus, Denmark ; Robert McCartney- University of Connecticut, Storrs, CT;Jan Erik Mostrm - Ume University, Ume,
Sweden....,A

6.

multi-national study of reading and tracing skills in novice programmers, 2004,

Eileen Costelloe, Teaching Programming, The State of the Art, Departmen of Computing, Institute of
Technology Tallaght, Dublin 24.

7.

Vesna Mesar , Programiranje, kolska knjiga, Zagreb, 2005.

8.

Vesna Mesar, Predrag Broanac , Programiranje - zbirka zadataka u Pascalu, kolska knjiga, Zagreb, 200.

9.

Fourteen Pedagogical Patterns, Joseph Bergin, Pace University One Pace Plaza New York, NY 10038 USA,
http://csis.pace.edu/~bergin/PedPat1.3.html

10. http://nova.umuc.edu/~jarc/idsv/ - primjeri vizualizacije algoritama


11. http://www.solidware.com/sort/
12. http://cg.scs.carleton.ca/~morin/misc/sortalg/
13. http://homepages.dcc.ufmg.br/~dorgival/applets/SortingPoints/SortingPoints.html
14. http://www.cs.fiu.edu/~weiss/Shellsort.html
15. http://www.educypedia.be/education/mathematicsjavasorting.htm
16. http://research.cs.queensu.ca/home/cisc121/
17. http://web.engr.oregonstate.edu/~minoura/cs162/javaProgs/sort/SelectSort.html
18. http://ahyco.ffri.hr/metodika/pojmovi_uvod.htm
19. http://hr.wikipedia.org/wiki/Niklaus_Wirth
20. http://hr.wikipedia.org/wiki/Biheviorizam#B.F._Skinner_i_radikalni_biheviorizam
21. http://csis.pace.edu/~bergin/index.html
22. http://www.srceko.com/montessori.php

100

You might also like