|
Šifra modula |
CS 210 |
Fakultet |
PMF SARAJEVO |
Uvod u programiranje
NASTAVNI PROGRAM
A. OPŠTI PODACI
|
Fakultet |
Prirodno-matematički fakultet Univerziteta u
Sarajevu |
|
Odsjek |
Odsjek za matematiku |
|
Smjer |
Matematika i informatika; Teorijska
kompjuterska nauka; Primijenjena matematika |
|
Semestar |
Treći |
|
Naziv modula |
Uvod u programiranje |
|
Tip modula |
Obavezni |
|
Broj kreditnih bodova |
5 |
|
Kontakt sati |
Ukupno |
Predavanja |
Vježbe |
Seminari |
Konsultacije |
|
90 |
30 |
AV30, LV30 |
0 |
po potrebi |
|
Samostalni rad (sati) |
35 |
|
Obavezni prethodno položeni moduli |
Uvod u računarsku tehniku; Računarski sistemi |
|
Modul relevantan za module |
Objektno orijentirano programiranje; Strukture
podadaka i algoritmi; Komparativna analiza programskih jezika;
Programske paradigme; Analiza i sinteza algoritama; Uvod u web
dizajn; Teorija podataka |
|
Nastavno osoblje |
|
|
– Nastavnik nosilac modula |
Doc. dr. Željko Jurić |
|
– Ostali nastavnici |
Prof. dr. Naser Prljača; Doc. dr. Haris
Gavranović |
|
– Asistenti |
Mr. Esmir Pilav; Mr. Almasa Odžak |
B. CILJEVI MODULA
|
Modul predstavlja elementarni kurs programiranja na računarima za
studente matematike. Ciljevi modula su upoznavanje sa osnovnim
programskim tehnikama, kao i osnovnim principima razvoja algoritama
i programa. Za tu svrhu koriste se programski jezici C i C++, bez
korištenja objektno-orijentiranih tehnika. |
C. SPECIFIČNI ZADACI MODULA
|
Kroz navedeni modul studenti će kroz samostalan rad na
laboratorijskim vježbama biti posebno usmjereni na rješavanje
problema uz pomoć računara, kao i na razvoj jednostavnijih
programskih rješenja u programskim jezicima C i C++. |
D. OČEKIVANI REZULTATI NASTAVNOG
PROCESA
|
Nakon završetka modula,
studenti će biti u stanju da:
- Razumiju osnove algoritama i
njihovih upravljačkih struktura;
- Razumiju sintaksu i semantiku
jezika C i proceduralne komponente jezika C++;
- Razumiju standardne tipove podataka
i njihovu primjenu;
- Dizajniraju algoritme za rješavanje
jednostavnijih praktičnih problema;
- Implementiraju dizajnirane
algoritme u programskim jezicima C i C++, uključujući odgovarajući
izbor struktura podataka;
- Struktuiraju programe korištenjem
potprograma.
|
E. SADRŽAJ NASTAVNOG
PROCESA
|
Br. |
Nastavna jedinica |
Nastavni metod |
Sati rada |
|
Kontakt |
Samostalno |
|
1. |
Uvod u algoritme; Pseudo kod; Upravljačke
strukture; Princip razvoja programa odozgo na niže |
Usmeno izlaganje 2
Vježbe i zadaci 2
Rad na računaru 2 |
6 |
2 |
|
2. |
Uvod u C i C++; Standardni ulaz i izlaz; Ulaz i
izlaz zasnovani na toku podataka; Promjenljive i konstante |
– II – |
6 |
2 |
|
3. |
Prosti tipovi podataka (cjelobrojni, realni,
znakovni, logički); Aritmetički izrazi; Operatori; Predefinirane
funkcije; Formatirani ispis |
– II – |
6 |
2 |
|
4. |
Organizacija podataka u računarskoj memoriji;
Pojava prekoračenja i gubitka tačnosti; Kompleksni tip kao primjer
standardnog predefiniranog složenog tipa podataka |
– II – |
6 |
2 |
|
5. |
Strukture jednostrukog grananja (if, else);
Strukture višestrukog grananja (kaskada if–else, switch, break) |
– II – |
6 |
3 |
|
6. |
Petlje (while, do–while, for) |
– II – |
6 |
2 |
|
7. |
Ugniježdene petlje; Kombiniranje različitih
upravljačkih struktura |
– II – |
6 |
3 |
|
8. |
Potprogrami; Korisnički definirane funkcije;
Lokalne i globalne promjenljive; Vidokrug identifikatora |
– II – |
6 |
2 |
|
9. |
Funkcije sa parametrima; Prenos parametara po
vrijednosti; Prenos parametara po referenci; Povratak vrijednosti iz
funkcija |
– II – |
6 |
3 |
|
10. |
Preklapanje funkcija; Podrazumijevani parametri;
Statičke promjenljive; Generičke funkcije |
– II – |
6 |
2 |
|
11. |
Pojam rekurzije; Rekurzivne funkcije i njihova
primjena |
– II – |
6 |
2 |
|
12. |
Složene strukture podataka; Jednodimenzionalni
nizovi; Prenos nizova u funkcije; Pobrojani tipovi |
– II – |
6 |
3 |
|
13. |
Stringovi kao nizovi karaktera; Standardne
funkcije za rad sa stringovima; |
– II – |
6 |
2 |
|
14. |
Višedimenzionalni nizovi |
– II – |
6 |
2 |
|
15. |
Jednostavni standardni algoritmi; Sortiranje
izborom; Mjehurasto sortiranje (bubble sort); Brzo sortiranje (quick
sort); Linearna pretraga; Binarna pretraga |
– II – |
6 |
3 |
F. PROVJERA ZNANJA I
OCJENJIVANJE
|
Provjera znanja - kriteriji |
Ocjenjivanje |
|
Kriterij |
Maksimalan broj bodova |
Bodovi za prolaz |
Osvojen broj bodova |
Ocjena (BiH) |
ECTS ocjena |
|
Domaće zadaće (2 zadaće) |
10 |
5 |
< 55,00 |
5 |
F |
|
Laboratorijske vježbe |
25 |
10 |
55,00 – 64,99 |
6 |
E |
|
Testovi tokom kursa (2 testa) |
40 |
25 |
65,00 – 74,99 |
7 |
D |
|
Usmeni završni ispit |
25 |
15 |
75,00 – 84,99 |
8 |
C |
|
|
|
|
85,00 – 94,99 |
9 |
B |
|
|
|
|
95,00 – 100,00 |
10 |
A |
|
U k u p n o |
100 |
55 |
|
G. LITERATURA
Osnovna literatura:
1. M. Harmann, R. Jones: “First Course in C++: A Gentle
Introduction”, Univ. of North London, McGraw-Hill Companies, 1997.
2. N. M. Prljača, M. J. Glavić: “Programiranje u C programskom jeziku”,
Univerzitet u Tuzli, Elektrotehnički fakultet, 1999.
3. J. Šribar, B. Motik: “Demistificirani C++ (2. izdanje)”,
Element, Zagreb, 2003.
4. Ž. Jurić: “Principi programiranja (kroz programski jezik
C++)”, materijal u pripremi, PMF Sarajevo.
Dopunska literatura:
1. B. Kernighan, D. Ritchie: “The C Programming Language (2nd
Edition)”, Prentice-Hall, Englewood Cliffs, NJ, 1988.
2. B. Stroustrup: “The C++ Programming Language (2nd
Edition)”, Addison-Wesley, Reading, MA, 1991.
3. B. Eckel: “Misliti na jeziku C++, Prvi tom: Uvod u
standardni C++ (prevod 2. izdanja)”, Prentice Hall Inc, prevod
Mikro Knjiga, Beograd, 2003.