Подручја рада
Претрага
5.Структура алгоритма

Уводни део часа ( 5 мин.)
1. Шта је алгоритам, а шта програм ?
2. Које су фазе у примени рачунара у решавању проблема ?
___________________________________________________________________________________
Главни део часа :

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

Поводом улазно - излазне реакције алгоритма потребно је одговорити на питања која се тичу самог дефинисања проблема. На та питања обавезно морамо да одговоримо пре него што приступимо конструисању самог алгоритма :

1. Шта су улазни подаци нашег програма ?
2. Шта су резултати ?
3. Каква је релација између улазних података и резултата ?

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

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

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

Graficki_simboli.jpg

Graficki_simboli_2.jpg

Graficki_simboli_3.jpg

Одговорити на следећа питања :
1. Колико прецизно треба дефинисати алгоритам ?
2. На која питања треба одговорити у вези самог дефинисања проблема ?
3. Да ли нам рачунар олакшава решавање проблема ?
4. У чему је разлика у решавању проблема уз помоћ рачунара или без помоћи рачунара ?
5. На шта треба обратити пажњу приликом писања алгоритма ?