Фајл Препорука за годину Коментар
C- osnovni kurs.pdf II, III, IV Скрипта ће бити корисна највише другој и трећој години, али и четврта може да се подсети :)
Tipovi_izrazi_operatori.pdf II  
programski_jezik_c.pdf II, III  
OOP_uvod.pdf IV  
ProgramiranjenaCplus.pdf IV  
04_Preklapanje_operatora.pdf IV  
Skripta_za_C.pdf II, III  
OOP_C++.pdf II, III, IV Овај фајл обавезно преузмите! Јасно, свеобухватно, за све три године.
C++Complete_Reference.pdf (english) II, III, IV Овде пише СВЕ :) Само за advanced кориснике! Остали нека избегавају - опасно је! :)

 

Школска година Резултати анкете
2007/2008. Anketa_2007-2008.pdf
2008/2009. Anketa_2008-2009.pdf
2009/2010. Anketa_2009-2010.pdf
2010/2011. Anketa_2010-2011.pdf
2011/2012. Anketa_2011-2012.pdf
2012/2013. Anketa_2012-2013.pdf
2013/2014. Anketa_2013-2014.pdf
2014/2015. Anketa_2014-2015.pdf
2015/2016. Anketa_2015-2016.pdf
2016/2017. (НОВО) Anketa_2016-2017.pdf

Главни мени

Ово је пример такозване "костур" апликације, са главним менијем. Циљ је да погледате како би могао да се организује основни оквир за неку апликацију. Овај пример је могуће користити као полазну тачку за све програме које ћемо касније писати.

Source код можете да преузмете ОВДЕ.

Упуство: Извадите фајлове из зипа у неки фолдер. У том истом фолдеру креирајте пројекат, обришите све што је по default-у закачено за exe а онда закачите редом фајлове из фолдера (десни клик, Add node ... ).

.cpp фајлове качите за exe (пројекат) а .h фајлове за одговарајуће .cpp

 

Циљ и задаци

Циљ предмета је оспособљавање ученика за програмирање основних алгоритамских корака на вишем програмском језику и писање програма различитих нивоа сложености, уз употребу савремених софтверских алата и окружења за развој апликација.

Задаци предмета су:

• Обучавање за различите технике програмирања и коришћење одговарајућих програмских језика

• Развијање код ученика новог начина размишљања обзиром на специфичност материје, коју у претходном школовању нису срели

• Развијање способности за прецизно формулисање проблема различите природе

• Развијање иницијативе за формализацију и уопштавање различитих задатака и поступака решавања помоћу алгоритама

• Обучавање ученика за анализу алгоритама и програма ради отклањања формалних и логичких грешака

• Усвајање основа за даље самостално стицање знања и усавршавање

• Оспособљавање ученика за писање структуираних, затим модуларних а на крају и објектно оријентисаних програма

 


 

II година

Исходи

На крају курса Програмирања у другој години (прва година учења предмета) од ученика се очекује да буде упознат са основним идејама и принципима програмирања, као и да је у стању да самостално:

• Нацрта и тестира елементарне алгоритме, као и да препозна основне алгоритамске структуре

• Разуме значење основних типова програмског језика, кључних речи, променљивих, константи, као и да разуме основну структуру програмског језика C

• Препозна и уме да употреби основне типове оператора у C језику

• Препозна и уме да употреби основне наредбе језика C, нарочито оне везане за ток програма и управљање извршавањем (if, switch, for, while, do..while)

• Уме да декларише и употреби низ, као структуру података, као и да зна неке основне поступке везане за низове (пролазак кроз низ, налажење минималног и максималног елемента, сортирање низа...)

Наставне теме и јединице

Програмирање рачунара (2 + 2)

• Хардвер и софтвер, програмски језици, синтакса и семантика прог. језика

• Развојно окружење, компајлер и линкер. Синтаксни дијаграми, бекусова нотација

Алгоритми (6 + 6)

• Дефиниција и задатак алгоритма. Графички запис

• Анализа проблема. Етапе решавања задатка. Провера исправности. Структура алгоритма. Примери сложених алгоритама

Структура језика и типови података (5 + 4)

• Структура програмског језика. Структура програма

• Кључне речи, идентификатори, константе и променљиве

• Основни типови података. Унос и приказ података. Наредбе и функције за унос и приказ података

Изрази и наредбе (5 + 5)

• Оператори језика. Изрази, наредбе, првенство оператора

• Оператор доделе вредности. Аритмет. оператори. Релацијски оператори. Логички оператори

• Оператори над битовима. Додатни оператори доделе вредности. Опер. инкрементирања и декрементирања. Стандардне функције

Ток програма и управљање извршавањем (4 + 4)

• Ток извршавања. if наредба

• Case. Безусловно гранање.

Наредбе циклуса (8 + 8)

• Основни циклуси

• for петља

• while и do-while петље

• Искакање из циклуса

Једнодимензионални низ (7 + 8)

• Дефиниција и декларација низа

• Иницијализација низа

• Приступање елементима низа, претраживање низа

• Сортирање низа, минимални и максимални елемент

Корелација

Највећа корелација постоји са математиком, нарочито у наставним темама које се баве променљивима и операторима.


 

III година

Исходи

На крају курса Програмирања у трећој години (друга година учења предмета) од ученика се очекује да буде упознат са целокупним градивом из претходне године, као и да је у стању да самостално:

• Уме да декларише, дефинише и употреби разне функције, као и да разуме основне идеје функционалног и модуларног програмирања

• Разуме шта су поинтери и како се користе да би се употребљавала динамичка меморија

• Уме да декларише и употреби матрицу као структуру података и да влада основним поступцима везаним за матрице (пролаз, пролаз кроз дијагонале ...)

• Разуме шта су тзв. "null terminated strings" у језику C и да уме да их употреби

• Разуме и уме да употреби основне технике претраживања и сортирања низова

• Разуме концепт структуре у C језику и уме да употреби структуру

• Разуме шта су фајлови (датотеке) и уме да користи фајлове за упис и читање података

• Разуме шта је динамичка меморија, разуме и уме да користи неке основне структуре података које користе динамичку меморију (поинтерска листа, двоструко спрегнута поинтерска листа, бинарно стабло...)

Наставне теме и јединице

Функције и структура програма (10 + 10)

• Дефинисање функција

• Параметри и аргументи функција, Формални параметри, Стварни аргументи

• Прототипови функција, Предаја параметара по вредности

• Бочни ефекти функција, Непроменљиви и непостојани формални аргументи

• Глобални идентификатори. Рекурзивне функције

Поинтери (показивачи) (5 + 5)

• Декларисање показивачких променљивих. Приступ подацима преко показивача

• Показивачи и низови

• Показивачи и функције

Матрице (5 + 5)

• Упознавање са матрицама. Дефинисање матрице

• Иницијализација матрице. Приступ елементима

• Проласци кроз матрицу

Стрингови (6 + 6)

• Дефиниција. Иницијализација

• Приступ елементима преко индекса и поинтера

• Основне функције за рад са стринговима. Функције са променљивим бројем параметара

• Модуларно програмирање

Технике претраживања и сортирања низова (4 + 6)

• Секвенцијално и бинарно претраживање

• Selection sort. Сортирање непосредним и бинарним уметањем. Bubble sort. Quick sort

Структуре (слогови) (8 + 8)

• Дефинисање структуре

• Структуре и функције

• Показивачи и структуре

• Набрајања. Уније. Поља битова

Датотеке (14 + 14)

• Отварање и затварање датотека

• Текстуалне датотеке

• Бинарне датотеке

• Позиционирање унутар датотеке

• Аргументи из командне линије

Динамичка меморија и динамичке структуре података (18 + 18)

• Динамичка додела меморије. Динамички низови

• Једноструко спрегнута листа. Формирање додавањем на почетак или на крај

• Формирање сортиране листе

• Брисање елемента листе. Приказ садржаја листе

• Брисање листе и ослобађање меморије

• Двоструко спрегнута листа. Формирање. Кретање кроз листу

Корелација

Корелација постоји са математиком, нарочито у наставним темама које се баве функцијама и матрицама.


IV година

Исходи

На крају курса Програмирања у четвртој години (трећа година учења предмета) од ученика се очекује да буде упознат са целокупним градивом из претходне две године, као и да је у стању да самостално:

• Разуме и уме да користи неке основне класе структура података (стек, ред...)

• Разуме основне идеје Објектно оријентисаног програмирања (ООП)

• Разуме и уме да употреби основне концепте ООП-а (апстрактни типови података, енкапсулација, наслеђивање и полиморфизам)

• Уме да напише и користи генеричке функције и класе

• Уме да напише програм у коме се користи систем за обраду изузетака (exceptions)

• Разуме основне идеје Windows operativnog система

• Уме да користи, бар елементарно, неко од савремених развојних окружења за писање Windows апликација

• Уме да напише једноставну Windows апликацију

• Разуме основне концепте релационих база података и система за управљање релационим базама података (RDBMS), као и да користи неко од интелектуалних средстава за моделирање база података (PMOV, SSA ...)

• Уме да напише једноставну Windows апликацију која ће бити повезана са неком базом података

Наставне теме и јединице

Полудинамичке и динамичке структуре података (6 + 6)

  • Формирање и рад са полудинамичком структуром података - стек
  • Формирање и рад са динамичком структуром података - ред
  • Формирање и рад са динамичком структуром података - сентинел листом

Увод у објектно оријентисано програмирање (ООП) (8 + 9)

  • Увод у ООП, предности, основни концепти
  • Основни концепти ООП: Апстракција, Енкапсулација
  • Основни концепти ООП: Наслеђивање, Полиморфизам
  • Преклапање оператора

Основни концепти ООП (30 + 27)

  • Класе. Дефинисање класа. Примерци класе - објекти. Животни век објектата.
  • Чланови подаци класа. Функције чланице класа - методе. Енкапсулација: јавни и приватни део класе.
  • Показивач this. Зајднички (static) чланови класе. Методе инспектори (const методе)
  • Конструктори и деструктори. Иницијализација објекта.
  • Преклапање операртора. Операторске функције.
  • Посебни оператори new и delete
  • Основни стандардни улазно излазни токови (istream, ostream)
  • Наслеђивање. Извођење класа
  • Конструктори и деструктори у изведеним класама. Редослед извршавања кроз хијерархију.
  • Полиморфизам. Виртуелне методе.
  • Чисте виртуелне методе. Апстрактне класе. Интерфејси.
  • Вишеструко наслеђивање.
  • Обрада изузетака: руковање изузецима, пријављивање, прихватање изузетака.

Базе података и ADO.NET (18 + 20)

  • Архитектура и компоненте ADO.NET-а
  • Основни објекти ADO.NET-а (DataSet, DataTable, DataTableCollecton)
  • Креирање и коришћење DataSet објеката
  • ADO.NET дата провајдери за повезивање са РДБМС базама података (SQL Server .Net, OLE DB .NET)
  • Успостављање везе са одређеним извором података - објекат Connection
  • Појам и формат Connection string-а и иницирање везе за базом података.
  • Извршавање команди и враћање резултата из извора података - објекат Command.
  • Налажење реад-онлy и форwард-онлy стримова података из базе података - објекат DataReader
  • Налажење података из извора и пуњење DataTable објеката и ограничења у DataSet-у коришћењем DataAdapter објекта.

Корелација

Пошто су објектно оријентисано програмирање (ООП) и Windows програмирање главне теме у четвртој години, осим неких општих начела и праваца, не може се уочити директна корелација са другим предметима.

Поткатегорије

0101

Програмирање

Овај предмет се учи у другој, трећој и четвртој години образовног профила Електротехничар рачунара.

Општи циљ предмета је оспособљавање ученика за програмирање основних и напредних алгоритамских корака на вишем програмском језику (учи се програмски језик C) и писање програма различитих нивоа сложености, коришћењем савремених софтверских алата и окружења за развој апликација.