Grafički zapis algoritma - Svet informatike i programiranja

Download Report

Transcript Grafički zapis algoritma - Svet informatike i programiranja

Grafički zapis algoritma

Najveći broj zadataka danas čovek rešava pomoću računara. Da bi se na taj način problemi rešili proces rešavanja treba definisati kroz nekoliko koraka. Najvažniji su : Formulacija problema, definisanje matematičkog oblika problema, pravljenje algoritama, programiranje, izrada test primera, testiranje problema, dobijanje i analiza rezultata.

Ovim i sličnim problemima bave se razne računarske discipline, ali osnova svega je matematika. Jedan od koraka, definisanje algoritama, je veoma složen i zahtevan posao. Teorija algoritama je samostalna oblast koja definiše apstraktne modele za rešavanje problema nezavisno od programskih jezika. Slično kao u ostalim matematičkim disciplinama, potrebno je proučiti zakonitosti i principe algoritama, a ne njegove konkretne implementacije .

Prvi algoritam napisao je persijski matematičar Abu Džafar Muhamed ibn Musa al Horezmi ( oko780-850g) i služio je za rešavanje algebarskih problema. Rođen je u gradu Horezmi ( današnji Uzbekistan ), ali je najveći deo života proveo u Bgdadu radeći u takozvanoj ‘Kući mudrosti’ (velika dvorska biblioteka formitana u 8 veku).

U 8 veku dolazi do širenja islama i velikih osvajanja Arapa. Tako osvajaju Persiju i njihova znanja asimiliraju. Preko njih dolaze o do znanja starih indusa.

Jedno od najznačajnijih bilo je otkriće pozicionog sistema i deset simbola 0,1,2,3,4,5,6,7,8,9 U knjizi ‘Al Horezmi o indijskoj veštini računanja’, on u matematiku uvodi indijske cifre i decimalni brojni sistem, koje se vremenom pogrešno počinju da se nazivaju arapskim ciframa. a od lošeg prevoda imena ovog matematicara na latinski, nastaje ime za algoritam.

Prvi računarski algoritam je napisala Ada Bajron 1842 godine. U pitanju je algoritam za računanje Bernulijevih brojeva na analitičkoj mašini Čalsa Bebidža. Ta mašina nikada nije proradila, ali je njen algoritam ostavio dubok trag.

U njenu čast jedan od programskih jezika dobio je ime Ada.

Sledeći značajan napredak u formalizaciji uvođenja algoritma u matematiku i logiku učinio je Alan Tjuring, definišući Tjuringovu mašinu.

To je primitivan automat, ustvari, misaona tvorevina koja poseduje mogućnost izvođenja operacija koje su dovoljne za izvođenje skoro svih algoritama.

Njegova mašina inicirala je teoriju konačnih automata.

U novije vreme, pojam algoritma se gotovo isključivo vezuje za računarstvo, mada se algoritmi koriste uvek kada jednostavno, u pojedinačnim koracima, želimo da rešimo neki problem. Na primer, svaki kuvarski recept je jedan algoritam.

U matematici su poznati Euklidov algoritam za određivanje najvećeg zajedničkog delioca dva broja, Gausov algoritam za rešavanje sistema linearnih jednačina i mnogi drugi.

Teško je dati preciznu definiciju algoritma i postoje mnoge ekvivalentene definicije, manje ili više stroge, ali može se opisno reći da: Algoritam je skup jasno definisanih pravila koja opisuju rešavanje nekog problema.

Algoritmi se mogu prestaviti na neki od sledećih načina: Dijagram- blok algoritamska šema, psudo jezici, odnosno, pseudokod. (Pseudokod predstavlja među korak između svakodnevnog jezika, (srpski, engleski i td. i programskih jezika), programski jezici, Prostova mašina , Tjuringova mašina, rekurzivne funkcije i mnogi drugi

DIJAGRAM- BLOK ŠEMA

Najčešće, algoritam se predstavlja u obliku blok šeme sa jasno definisanim nizom radnji, korak po korak. Grafički zapis algoritma naziva se algoritamska blok šema. Grafički simboli koje se koriste za pravljenje algoritamske šeme su: Početak- prvi korak algoritma Definiše ulazne veličine algoritma Definiše obradu podataka Uslovni algoritamski korak Definiše izlazne veličine algoritma Definiše kraj algoritma

Algoritamske šeme mogu se podeliti u dve kategorije:

Linijske algoritamske šeme, ciklične algoritamske šeme

Linijske algoritamske šeme su one šeme kod kojih se svaki algoritamski korak izvršava najviše jedanput u toku izvršavanja algoritma. Mogu biti proste i razgranate.

Proste linijske algoritamske šeme, su one šeme kod kojih se svaki algoritamski korak izvršava tačno jednput u toku izvršavanja algoritma.

Razgranate linijske algoritamske šeme, su one šeme kod kojih se svaki korak izvršava tačno jedanput i obavezno sadrži bar jedan uslovni algoritamski korak. Ako je uslov ispunjen, izlaz iz algoritamskog koraka biće označen sa da, a ako uslov nije ispunjen izlaz će biti označen sa ne.

Grafički prikaz proste linijske šeme dat je na sledećoj slici.

Po četak P Kraj