Algoritmi - uvod u programiranje

Programske strukture

Algoritmi


Algoritam je apstraktni koncept koji nam služi za razvijanje logičkih vještina ne samo u programiranju nego i u rješavanju svakodnevnih životnih situacija. Kako različite osobe često različito percipiraju problem, što bitno ovisi i o preciznosti definiranja problema, tako su i rješenja često različita i nejednako detaljno razrađena.

Izrada algoritama potiče:

  1. kreativnost
  2. prosuđivanje
  3. iznalaženje različitih načina za rješavanje problema

Algoritam je procedura koja do posljednjih detalja opisuje aktivnosti i njihov redoslijed, potreban da se obradom ulaznih podataka, u konačnom broju koraka dođe do izlaznih podataka, odnosno rješenja.


Programski jezik C++  je viši programski jezik koji je razvijen za objektno orijentirano programiranje a razvijen je u Bell Labsu (laboratorij telekomunikacijske tvrtke Bell) pod rukovodstvom Bjarne Stroustropa tokom 1980-tih kao proširenje programskog jezika C.

Za pisanje programskog koda u C++-u koristiti ćemo CodeBlocks (ili DEVC++)



Cilj algoritma je cjelokupni zadatak svesti na niz jednostavnih, manjih radnji, te na temelju ulaznih podataka dobiti rezultat.
Koraci koje prolazimo prilikom izrade algoritma:
koraci u izvođenju algoritma
Algoritam treba imati slijedeća svojstva:

  1. Konačnost – mora uvijek završiti nakon konačnog broja koraka
  2. Definiranost – svaki korak mora biti precizno definiran – akcije koje treba poduzeti moraju biti jednoznačno (nedvosmisleno) definirane
  3. Ulaz – može ali i ne mora imati ulazne veličine koje su dane inicijalno prije početka algoritma
  4. Izlaz – ima jednu ili više izlaznih veličina koje su u specificiranom odnosu sa ulaznim veličinama
  5. Efikasnost - sve operacije koje se obavljaju u algoritmu moraju biti jednostavne tako da se mogu obaviti u točno i u konačnom vremenu
Naš cilj pri izradi je pronaći algoritam koji najbrže, najučinkovitije i najsigurnije dovodi do rezultata.