You are on page 1of 11

Crna Gora

Vlada Crne Gore


MINISTARSTVO PROSVJETE I NAUKE ZAVOD ZA KOLSTVO

ALGORITMI I PROGRAMIRANJE

OIP - dopuna maturskog standarda za predmet Informatika


u III i IV razredu gimnazije
Sadraj

1. Naziv nastavnog predmeta................................................................................................................... 3


2. Odreenje predmetnog programa ........................................................................................................ 3
3. Opti ciljevi predmetnog programa ....................................................................................................... 3
4. Sadraji i operativni ciljevi predmetnog programa ................................................................................ 4
5. Standardi znanja................................................................................................................................. 10
6. Naini provjeravanja znanja i strune osposobljenosti ....................................................................... 10
7. Resursi za realizaciju nastave ............................................................................................................ 11
8. Profil i struna sprema nastavnika/ca i strunih saradnika/ca............................................................. 11

2
1. NAZIV NASTAVNOG PREDMETA

OBAVEZNI IZBORNI PREDMET

NAZIV PREDMETNOG PROGRAMA

ALGORITMI I PROGRAMIRANJE

2. ODREENJE PREDMETNOG PROGRAMA

Izborni predmet. Ukupan broj asova: 105 (3 asa sedmino).


ALGORITMI I PROGRAMIRANJE je izborni predmet koji uenici/e mogu birati u III ili IV razredu gimnazije i koji slui kao dopuna do
maturskog standarda za predmet Informatika.

3. OPTI CILJEVI PREDMETNOG PROGRAMA

Osnovni cilj ovog predmeta je da uenici/e ovladaju tehnikama algoritamskog pristupa rjeavanju problema i osnovnim principima
programiranja kroz programski jezik JAVA. Algoritamski pristup rjeavanju problema razvija analitike sposobnosti uenika/ca i
upoznaje ih sa principom dekompozicije problema na podprobleme. Programski jezik JAVA je najpopularniji programski jezik za
uenje programiranja. Kroz uenje ovog jezika vri se implementacija nauenih algoritama. Uenici/e se upoznaju i sa objektno
orijentisanom paradigmom kreiranja softvera i principima pravilnog kreiranja softvera (tzv. softverskog inenjerstva). Kroz
programiranje uenici/e mogu da se upoznaju sa osnovama razvoja grafikog korisnikog interfejsa (GUI). Jezik Java moe se
koristiti i za veb-programiranje. Poznavanje osnovnih principa programiranja omoguava uenicima/ama da primjenom raunara
rjeavaju probleme ze koje ne postoji adekvatan softver, kao i da razvijaju aplikacije koje odgovaraju konkretnim korisnikim
zahtjevima.
Ovaj predmet predstavlja osnovu za razvijanje naprednih programerskih vjetina i uvod u projektovanje softvera.

3
4. SADRAJI I OPERATIVNI CILJEVI PREDMETNOG PROGRAMA
Operativni ciljevi Aktivnosti Pojmovi/sadraji Korelacija
Uenik/ca treba da: Uenici/e:
- razumije pojam algoritma, - se upoznaju sa kreiranjem linijskih
- shvata osnovne elemente algoritamskih ema, Algoritamske eme; pseudokod; Matematika: aritmetika i
algoritamske eme, - upoznaju kreiranje razgranatih vremenska i prostorna sloenost. geometrijska progresija, rekurentne
- prepoznaje osobine algoritama algoritamskih ema, formule.
(prostorna i vremenska sloenost, - upoznaju predstavljanje algoritama
determinizam, diskretnost), pseudokodom, Informatika.
- zna da provjeri ispravnosti - izraunavaju i provjeravaju
algoritma. sloenost algoritma,
- empirijski i teorijski provjeravaju
(okvirno 10 asova) ispravnost algoritma.
Uenik/ca treba da:
- razlikuje algoritam i program, Sa uenicima/ama se razgovara o Paradigme projektovanja softvera; Informatika.
- zna koje su programske tome za koje su programske jezike kompajler; interpreter; proces
paradigme, uli/e. prevoenja i interpretacije programa. Maternji jezik i knjievnost i Strani
- raspoznaje programske jezike po Uenicima/ama se objanjava koje jezik: veza programskog jezika i
paradigmama, paradigme postoje i koje su im prirodnog jezika.
- zna ulogu prevodioca, karakteristike: imperativna - jezici C,
- razlikuje kompajler i interpreter. Pascal, Basic; objektno-orijentisana
C++, JAVA; funkcionalna LISP, ML;
(okvirno 4 asa) deklarativna Prolog.
Uenici/e:
- se upoznaju sa odreivanjem
uloge prevodioca,
- saznaju primjere kompajlera i
interpretera,
- rade nstaliranje JAVA prevodioca i
editora,
- rade podeavanje radne okoline
(CLASSPATH ).

4
Operativni ciljevi Aktivnosti Pojmovi/sadraji Korelacija
Uenik/ca treba da: Uenici/e rade:
- prepoznaje pojam objekta, reference - kreiranje objekta u jeziku JAVA, Editor; J2SE; pravilan format Informatika.
na objekat, klase i poruke, - otvaranje editora, kreiranje programa; itljivost koda.
- zna da koristi editor, programa i snimanje izmjena,
- shvata format JAVA programa, - zadavanje formata programa,
- kreira prvi JAVA program - kreiranje i izvravanje jednostavnog
(System.out.println), programa,
- unosi komentare, - komentarisanje koda i pravilno
- koristi metode objekta PrintStream. uvlaenje linija koda itljivost koda.

(okvirno 4 asa)
Uenik/ca treba da: Uenici/e:
- razumije pojam identifikatora i - rade kreiranje razliitih identifikatora, Editor; identifikator; literal; konstanta; Matematika: razlika izmeu
prepoznaje ih u jeziku JAVA, - na primjeru upoznaju razlikovanje promjenljiva; tip promjenljive. promjenljive u matematici i
- shvata pojam tipa identifikatora i rezervisane rijei od drugih programiranju.
prepoznaje primitivne tipove u JAVI, identifikatora,
- prepoznaje rezervisane rijei, - rade kreiranje JAVA Bajt Koda i
- razlikuje Ime.java fajl i Ime.class fajl, pregled tog koda,
- zna ta je Java Byte Code, - rade pronalaenje Ime.java fajla i
- umije da deklarie promjenljivu, Ime.class fajla poslije prevoenja
- zna da dodijeli vrijednost programa,
promjenljivoj. - rade upotrebu literala, konstanti i
(okvirno 4 asa) promjenljivih u jednostavnim
programima,
- rade dodjeljivanje vrijednosti
promjenljivim.
Uenik/ca treba da: Uenici/e:
- prepoznaje i koristi metode klase - upoznaju pisanje programa koji String; podstring; overloading
String, koriste stringove (jednakost (prepotereenje); poruke.
- shvata pojam signature, stringova, podstringovi, izvlaenje
- na primjeru podstringa koristi karaktera, transformacije ),
overloading, - upoznaju pisanje programa koji
- shvata princip kaskadnog slanja koriste overloading,
poruka. - upoznaju pisanje programa koji
(okvirno 3 asa) koriste kaskadno slanje poruka.

5
Operativni ciljevi Aktivnosti Pojmovi/sadraji Korelacija
Uenik/ca treba da: Uenici/e:
- kreira objekat putem konstruktora, - rade kreiranje vie kontsruktora za Konstruktor; datoteke.
- kreira objekat na primjeru klase klasu,
String, - rade otvaranje i zatvaranje
- upotrebljava metode datoteke (fajla),
FileOutputStream klase, - rade upisivanje podataka u fajl.
- zna svojstva i metode PrintStream
objekta.
(okvirno 4 asa)
Uenik/ca treba da: Uenici/e:
- razumije i koristi metode klasa - upoznaju pisanje programa koje Klasa FileInputStream; klasa
FileInputStream, koriste klase FileInputStream, BufferedInputStream; klasa
BufferedInputStream, BufferedInputStream, InputStreamReader; klasa
InputStreamReader i - rade kreiranje programa koje BufferedReader.
BufferedReader, koriste klase InputStreamReader i
- shvata razliku izmeu razliitih BufferedReader.
klasa za pristup datotekama
(fajlovima).
(okvirno 4 asa)
Uenik/ca treba da: Uenici/e:
- umije da definie klasu, - rade kreiranje korisnike klase, Objektno-orijentisano projektovanje;
- zna da napie konstruktore za - na primjerima upoznaju this; Get i Set metodi; Main; static
klasu, prepoznavanje kontrole pristupa, metodi; nasljeivanje (inheritance).
- kreira metode klase, - rade kreiranje Set i Get metode,
- razumije kontrolu pristupa (public, - rade kreiranje podklase (izvedene
private), klase),
- zna ta je this, - rade prepoznavanje problema koje
- kreira Get i Set metode, mogu nastati pri nasljeivanju.
- razumije ulogu metoda Main,
- shvata ta su static metodi,
- prepoznaje na primjeru
nasljeivanje,
- projektuje i implementira
naslijeenu klasu.
(okvirno 8 asova)

6
Operativni ciljevi Aktivnosti Pojmovi/sadraji Korelacija
Neobavezna tema Uenici/e:
Uenik/ca treba da: - rade kreiranje appleta, Applet; veb-stranica.
- kreira jednostavne applet-e. - rade ukljuivanje appleta u veb-
(okvirno 4 asa) stranicu.
Uenik/ca treba da: Uenici/e:
- razlikuje primitivne tipove podataka - upoznaju konvertovanje vrijednosti Konverzija; objekti i primitivne vrijednosti Matematika: veza klase Math sa
(int, long, short, float, double, boolean) primitivnih tipova u odgovarajue formatiranje; klasa Math; klasa Time. matematikim objektima i konstantama.
i objekte odgovarajuih klasa (Integer objekte i obratno,
...), - rade pisanje programa koji koriste
- koristi Math klasu, klasu Math,
- koristi Time klasu. - rade pisanje programa koji koriste
(okvirno 3 asa) klasu Time.

Uenik/ca treba da: Uenici/e:


- razumije uslovno izvravanje naredbi, - rade pisanje programa sa IF i Switch If; switch; while; for.
- razumije i koristi If naredbu i Switch naredbom,
naredbu, - rade pisanje programa sa while
- shvata princip rada petlje, naredbom,
- koristi While i For petlju. - rade pisanje programa sa for
(okvirno 4 asa) naredbom.

Uenik/ca treba da: Uenici/e:


- prepoznaje i koristi metode Vector - upoznaju projektovanje programa koji Klasa Vector; klasa Set. Matematika: skupovi, nizovi.
klase, koriste Vector klasu,
- prepoznaje i koristi metode Set klase, - upoznaju kreiranje programa koji
- razlikuje semantike sintaksne greke, koriste klasu Set,
- zna da ukloni greke u programu - diskutuju o prednostima i manama
(debugging). klasa Vector i Set,
(okvirno 4 asa) - rade uklanjanje greaka u programu.
Uenik/ca treba da: Uenici/e:
- razumije pojam niza, - rade kreiranje programa sa Niz; matrica; petlje. Matematika: matrini raun.
- kreira nizove primitivnih tipova, jednodimenzionalnim nizovima
- kreira nizove objekata, (unoenje elemenata, tampanje
- shvata pojam viedimenzionalnog elemenata, maksimum i minimum,
niza, traenje u nizu),
- kreira viedimenzionalni niz. - rade kreiranje programa sa
(okvirno 8 asova) viedimenzionalnim nizovima
(matrice).

7
Operativni ciljevi Aktivnosti Pojmovi/sadraji Korelacija
Uenik/ca treba da: Uenici/e:
- razumije principe grafikog interfejsa - diskutuju o principima kreiranja GUI - Graphical User Interface; Likovna umjetnost: principi slaganja
(GUI), grafikog interfejsa, events; thread. boja
- poznaje osnovne elemente za - rade kreiranje programa sa Komunikologija: komunikacija sa
kreiranje interfejsa (panel, dugme, elementima grafikog interfejsa, korisnikom programa.
check-box, option, text-box ...), - rade kreiranje dogaaja za pojedine
- shvata princip dogaaja u JAVI komponente interfejsa,
(event), - rade pisanje programa sa thread-
- implementira dogaaje za ovima.
komponente,
- prepoznaje mogunost upotrebe
Thread-ova,
- implementira jednostavnije programe
sa thread-ovima.
(okvirno 8 asova)
Neobavezna tema Uenici/e:
Uenik/ca treba da: - rade kreiranje programa koji koriste Rekurzija; string; kombinatorika.
- razumije rekurziju kao princip tzv. tail-rekurziju,
rjeavanja problema, - saznaju o primjerima programa za
- implementira rekurzivne programe. tampanje stringa, tampanje stringa u
(okvirno 6 asova) obrnutom redosljedu, provjeru
palindroma, pretvaranje broja u binarni
zapis
- upoznaju primjere programa: Hanojske
kule, permutacije, kombinatorika.
Uenik/ca treba da: Uenici/e:
- razumije razloge sortiranja podataka - rade kreiranje porgrama za razliite Insertion sort; selection sort; bubble sort; Matematika: aritmetiki i geometrijski niz,
po raznim kriterijumima, metode sortiranja niza. quicksort; mergesort; counting sort. kombinatorika, rekurentne formule.
- implementira razliite metode
sortiranja niza (direktno viestruko
razvrstavanje, sortiranje umetanjem
(insertion sort), sortiranje izborom,
sortiranje objedinjavanjem ve
sortiranih (mergesort), razdvajanje
pomou pivota (quicksort), counting
sort,
- prepoznaje sloenost razliitih
algoritama sortiranja niza.
(okvirno 8 asova)

8
Operativni ciljevi Aktivnosti Pojmovi/sadraji Korelacija
Neobavezna tema Uenici/e:
Uenik/ca treba da: - kreiranje programa koji koriste Backtracking; dekompozicija Matematika.
- razumije backtracking kao princip backtracking (razmjetaj dama na problema. ah.
rjeavanja problema, ahovskoj tabli tako da se ne
- prepoznaje probleme koji mogu biti napadaju, obilazak ahovske table
rijeeni primjenom backtracking-a, skakaem, permutacije, obilazak
- implementira programe sa lavirinta, igre ...).
backtracking-om.
(okvirno 6 asova)
Neobavezna tema Uenici/e:
Uenik/ca treba da: - rade kreiranje programa koji Dinamiko programiranje. Matematika: matrice, kombinatorika.
- razumije dinamiko programiranje koriste dinamiko programiranje
kao princip rjeavanja problema, (obilazak tabele po nekim
- prepoznaje probleme koji mogu biti pravilima, najdui zajedniki
rijeeni primjenom dinamikog podniz, mnoenje matrica ...).
programiranja,
- implementira programe sa
dinamikim programiranjem.
(okvirno 6 asova)
Neobavezna tema Uenici/e:
Uenik/ca treba da: - rade kreiranje programa koji Graf; stepen vora; putanje u grafu; Matematika: kombinatorika, grafovi.
- razumije pojam grafa i osobine koriste grafove. obilazak grafa; najkrai put.
grafova,
- prepoznaje probleme koji se mogu
svesti na graf,
- zna razliite metode obilaska
grafa,
- implementira programe sa
grafovima.
(okvirno 8 asova)
Uenik/ca treba da: Uenici/e:
- razumije pojam paketa (package) i - rade kreiranje paketa, Package; JAR.
kreira svoje pakete, - rade kreiranje JAR fajla i
- shvata pojam JAR fajla kao naina distribucija.
distribucije JAVA aplikacija.
(okvirno 4 asova)

9
5. STANDARDI ZNANJA

Uenik/ca treba da:


- kreira algoritamsku emu za zadati problem,
- kreira program koji implementira zadati algoritam,
- zna da prevede program i otkloni eventualne greke,
- umije da kreira klasu i podklasu,
- primjenjuje JAR fajl kao nain distribucije aplikacije,
- koristi nizove u svojim programima,
- zna da uita podatke iz datoteke i upie podatke u datoteku,
- razumije princip paketa i umije da pronae traene klase u paketu,
- prepoznaje situacije u kojima moe koristiti nizove, klasu Vector i klasu Set,
- koristi petlje i usovne naredbe.

6. NAINI PROVJERAVANJA ZNANJA I STRUNE OSPOSOBLJENOSTI

Uenici/e se ocjenjuju kroz izradu odreenih vrsta algoritama i programa na zadatu temu. Za naprednije uenike/ce moe se
zadati sloeniji algoritam i program. Mogue je i na poetku godine zadati jedan vei projekat koji treba postupno u toku godine
rjeavati (npr. kolska biblioteka). Pored ovog, mogue je zadati kvizove sa pitanjima koja provjeravaju da li su uenici/e ovladali/e
pojedinim dijelovima predvienog materijala. Predloeni operativni ciljevi mogu se realizovati za 118 asova. Neke od tema su
predloene kao neobavezne (ukupno 36 asova). Neobavezne teme su uglavnom one koje se najee pojavljuju na
takmienjima iz programiranja i one treba da budu obraene posebno sa uenicima/ama koji/e se takmie. Nastavnik/ca moe
izabrati samo neke od tih tema ili ak dijelove tih tema.

10
7. RESURSI ZA REALIZACIJU NASTAVE

7.1. Materijalni uslovi, standardi i normativi

Za realizaciju ovog programa neophodno je postojanje jedne uionice opremljene odgovarajuim brojem raunara (najvie 2
uenika/ce po jednom raunaru), projektorom i mrenim tampaem. Na svakom od raunara mora biti instalirana J2SE (JAVA
Standard Edition) i odgovarajui tekst-editor (npr. Notepad++). Mogue je i korienje ECLIPSE frejmvorka.

7.2. Okvirni spisak literature i drugih izvora

1. Eckel, B.: Misliti na JAVI, 4. izdanje (Thinking in JAVA), Mikro knjiga, 2007.
2. Schildt, H.: Java J2SE 5 - kompletan prirunik, Mikro knjiga, 2006.

8. PROFIL I STRUNA SPREMA NASTAVNIKA/CA I STRUNIH SARADNIKA/CA

Profesor/ica matematike ili informatike (PMF, FON), profesori/ce ostalih predmeta koji/e su tokom redovnih studija sluali/e
dvosemestralni kurs iz programiranja ili imaju odgovarajui sertifikat.

Predmetni program ALGORITMI I PROGRAMIRANJE za III ili IV razred gimnazije uradila je Komisija u sljedeem sastavu:

Goran ukovi, predsjednik


Biljana Stamatovi, lan

11

You might also like