Решавање проблема помоћу рачунара

Модификовани извод из књиге Мирослава Илића  "Рачунарство и информатика за 3. разред гимназије", Девета гимназија "Михаило Петровић Алас", Нови Београд, 2012.

Решавање проблема коришћењем рачунара

Проблеми са којима се човек сусреће у животу могу се решавати на разне начине. Велики број проблема може се решити и без употребе рачунара, али ако знамо да решавање проблема подразумева један дуг и компликован процес долажења до решења, провере решења и примене у различитим околностима, онда смо свесни да нам рачунари пуно могу помоћи. Ако треба проверити тачност неке математичке формуле то значи да треба небројено пута применити формулу на различите почетне вредности. Што су формуле компликованије то нам више времена треба да би смо добили коначан резултат, па се број примера за проверу смањује, а самим тиме и се смањује могућност налажења евентуалних грешака у формули. Ту нам рачунари могу помоћи у великој мери. Наиме, рачунарски програм можемо покренути колико год пута хоћемо са било којим почетним подацима и рачунар ће "послушно" извршити назначене операције и приказати резултате у много краћем времену него да смо то сами радили на папиру. Предност рачунара је и то што не греши, не умара се, не пада му концентрација. Увек ради оно што је предвиђено истим редом и са истом енергијом као да је први пут. Зато се све више проблема решава помоћу рачунара. Некада су се само рачунски задаци решавали помоћу рачунара, данас рачунари налазе примену и у разним анализама, испитивањима и другим радњама и поступцима који се традиционално никада не би везали за рачунар. Све се може решити помоћу рачунара само се поставља питање да ли смо довољно способни да проблем који решавамо преточимо у низ инструкција које рачунар може да изврши.

Најопштије гледано, решавање проблема помоћу рачунара може се поделити у неколико етапа:
  • Поставка проблема - Неко захтева да му се реши проблем (не мора да зна да програмира, али није лоше да има одређену рачунарску писменост) - он је наручилац. Неко треба да напише програмкоји решава постављени проблем (не мора бити стручњак за област проблема, али није лоше да макар делимично познаје термине) - он је извршилац. Да би се посао коректно одрадио наручилац мора да дефинише свој проблем на језику који је подједнако разумљив и њему и извршиоцу. Веома је важно да формулација проблема буде потпуна и прецизна јер извршилац мора да зна шта се од њега тражи да би то и урадио. Није добро да се проблемски захтеви касније допуњавају или мењају јер то нарушава интегритет урађеног дела програма и доводи до великог кашњења у реализацији.
  • Анализа - На основу захтева наручиоца дефинишу се улазни и излазни подаци, формално се описује проблем и ствара се математички модел решења.
  • Избор или израда алгоритма - На основу анализе проблема сада се дефинишу кораци који прецизно, једнозначно описује решавање проблема и дефинишу се формуле које ће се користити у програму, форме извештаја и друго.
  • Пројектовање опште структуре програма - На основу врсте и карактеристика алгоритма извршилац треба да изабере програмски језик којим ће оптимално решити постављени проблем и помоћну програмску подршку у зависности од специфичности примене програмског језика.
  • Кодирање -Запис алгоритма на програмском језику је најједноставнији део процеса решавања проблема. Од извршиоца се захтева да познаје методологију програмског језика и алгоритам.
  • Тестирање - Када је програм написан, пре него се испоручи, мора се извршити провера исправности и отклонити, евентуалне, грешке. Што више провера то је поузданост програма већа, при томе, тест примери треба да буду што разноврснији како би се провером обухватило што више случајева и избегло да се наручиоцу испоручи неисправан програм. Грешке се могу исправити, али се утисак о личности извршиоца не може поправити лако.
  • Анализа резултата извршавања програма - Резултати који су добијени приликом тестирања треба да се поклапају са резултатима у природном процесу (или да буду у границама дозвољеног одступања). У овој фази открива се већина грешака и отклони ако је анализа коректна.
  • Публиковање и испорука програма - Тестирањем доказан програм се ставља на тржиште (ако јеопште прихватљив и користан, тј. ако није уско специјализован) и испоручује наручиоцу.
  • Одржавање и модернизација програма - Испоруком програма не завршава се процес решавања проблема. Наручилац или други корисници морају да се обуче. У току примене програма корисници морају да се консултују о раду програма, а програм може и мора да се ажурира, осавремењује како би увек био ефикасан.
Comments