Увод у програмирање

Циљ и исход предмета

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

Теоријска настава

Основни појмови програмирања: прогармски језик, алгоритам, команда, изворни код, компајлирање, окружење за извршавање програма. Представљање података у рачунару, бројевни системи, представљање карактера (ASCII табела) и реалних бројева. Читање са системског улаза и испис на системски излаз. Прости типови података и променљиве. Операције над подацима - аритметичке, битовне, релационе, логичке. Контрола тока програма - гранања и петље. Функције и опсег видљивости променљивих. Рекурзија и њена примена у задацима. Сложенији типови података - низови, стрингови и структуре. Показивачи и управљање меморијом. Динамичке структуре података - листе и бинарна стабла. Рад са фајловима.

Практична настава

Упазнавање са окружењем за имплементацију програма. Имплементација програма са секвенцијалним извршавањем команди уз читање података са системског улаза и испис на системски излаз. Илустрација коришћења различитих типова података и операција над њима. Коришћење разних уграђених функција, писање нових функција. Имплементација програма са различитим варијантама гранања - if, switch, тернарни условни оператор. Програми који користе петље. Илустрација различитих врста петљи (фор, wхиле, до-wхиле) на примерима задатака. Угњеждене петље. Примери програма који користе рекурзију. Програми са низовима. Рад са стринговима као низовима и коришћење уграђених функција над стринговима. Илустрација примера са показивачима. Рад са низовима и стринговима преко показивача. Задаци са једноструко повезаном листом, имплементација операција над листом на два начина - итеративно и рекурзивно. Задаци који користе уређено бинарно стабло. Имплементација операција над уређеним бинарним стаблом на рекурзиван и итеративан начин. Читање из фајла и упис у фајл. Учитавање података из фајла у динамичку структуру података и обрада тих података преко операција над структуром.