You are on page 1of 32

Algoritamske eme

Teorija i primjeri

Algoritam
Pod algoritmom se podrazumeva konaan ureen niz precizno formulisanih pravila kojima se rjeava jedan ili itava klasa problema

Primjer algoritma kuvanje aja


Primjer algoritma iz svakodnevnog ivota je kuvanje aja.Svaki korak pripremanja aja mora biti izvren pravilno kako bi se moglo predi na slededi i u konanom vremenu dobili skuvan aj. Algoritam kuvanja aja glasi
1. 2. 3. 4. 5. 6. 7. Uzeti lone i sipati vodu Ukljuiti ringlu Staviti lone na ringlu i saekati da voda prokljua Kad voda prokljua, skinuti lone i iskljuiti ringlu Staviti kesicu aja u lone Po elji, dodati kaiku edera, mlijeko ili limun. Sipati aj u olju

Primjer kompleksnijeg algoritma Euklidov algoritam


Euklidov algoritam se koristi za odreivanje najvedeg zajednikog djelioca(NZD):
1. Ako je a < b razmijeniti njihove vrijednosti 2. Oduzeti od broja a broj b pri emu se dobija razlika c 3. Broj a uzima vrijednost broja c 4. Ponavljati sve dok je a<>b. Ako je a=b,NZD je trenutna vrijednost broja a (tj. b)

Algoritamske eme
Algoritamske eme su uobiajan nain prikazivanja algoritama. Prvobitno se za opis algoritma koristio tekstualni opis na prirodnom jeziku, ali poto je takav opis kod sloenih problema teko itljiv, a samim je i traganje za grekama mukotrpno, pribjegava se preglednijem grafikom prikazu algoritma - blok (ili algoritamskoj) emi.

Primjer algoritamske eme

Grafiki simboli za pojedine algoritamske korake

Tipovi algoritamskih ema


Algoritam proizvoljne sloenosti moe biti predstavljen kombinacijom tri bazne strukture: linijske, razgranate i ciklike

Linijski algoritmi
Linijskim se nazivaju algoritmi kod kojih se naredbe (ili instrukcije) izvravaju sekvencijalno jedna za drugom.

Razgranati algoritmi
Razgranatim se nazivaju algoritmi kod kojih se u zavisnosti od vrednosti logikih uslova izvravanje nastavlja jednom od dve grane.

Cikliki algoritmi
Ciklikim se nazivaju algoritmi koji sadre niz instrukcija (telo ciklusa) koje se mogu ponavljati vie puta. Postoje dve vrste ciklikih algoritama koji se razlikuju po poloaju tela ciklusa u odnosu na uslov.

Tipovi algoritamskih ema

Primjer 1
Napisati algoritam za raunanje razlike, proizvoda i kolinika dva zadana broja.

Primjer 1
Napisati algoritam za raunanje razlike, proizvoda i kolinika dva zadana broja. Algoritam: poetak ----------------------------------------------------upii A, B C=A-B D=AB E=A/B ispii C, D, E ----------------------------------------------------kraj

Primjer 2
Napisati algoritam za raunanje obima i povrine kvadrata, ako je zadana duina stranice kvadrata.

Primjer 2
Napisati algoritam za raunanje obima i povrine kvadrata, ako je zadana duina stranice kvadrata.

poetak ----------------------------------------------------upii A OPSEG = 4 A POVRINA = A A ispii OPSEG, POVRINA ----------------------------------------------------kraj

Primjer 3
Napisati algoritam za raunanje prosjeka 4 zadana broja.

Primjer 3
Napisati algoritam za raunanje prosjeka 4 zadana broja.

Algoritam: poetak ----------------------------------------------------upii A,B,C,D PROSJEK = (A + B + C + D) / 4 ispii PROSJEK ----------------------------------------------------kraj

Primjer 4
Napisati algoritam za pretvaranje duine izraene u mjernoj jedinici 'centimetar' u mjernu jedinicu 'metar'. Zadaje se mjerni broj u centimetrima, a treba odrediti koliko je to metara.

Primjer 4
Napisati algoritam za pretvaranje duine izraene u mjernoj jedinici 'centimetar' u mjernu jedinicu 'metar'. Zadaje se mjerni broj u centimetrima, a treba odrediti koliko je to metara.

Algoritam: poetak ----------------------------------------------------upii X METRI = X / 100 ispii METRI ----------------------------------------------------kraj

Napisati algoritam koji zadani broj A uveava 100 puta ako je A manji od 100, a inae A umanji za 100. Ispisati dobijeni rezultat.

Primjer 5

Napisati algoritam koji zadani broj A uveava 100 puta ako je A manji od 100, a inae A umanji za 100. Ispisati dobijeni rezultat.

Primjer 5

Algoritam: poetak ----------------------------------------------------upii A ako je A < 100 onda A = A 100 inae A = A - 100 ispii A ----------------------------------------------------kraj

Primjer 6
Napisati algoritam za raunanje obima i povrine kvadrata, ako je zadana duina stranice kvadrata A. Prije raunanja provjeriti da li je A vede od 0, a ako nije ispisati poruku: 'Stranica kvadrata mora biti pozitivan broj.'

Primjer 6
Napisati algoritam za raunanje obima i povrine kvadrata, ako je zadana duina stranice kvadrata A. Prije raunanja provjeriti da li je A vede od 0, a ako nije ispisati poruku: 'Stranica kvadrata mora biti pozitivan broj.' Algoritam: poetak ----------------------------------------------------upii A ako je A > 0 onda opseg = 4 A, ispii opseg inae ispii 'Stranica kvadrata mora biti pozitivan broj.' ----------------------------------------------------kraj

Primjer 7
Napisati algoritam za program s kojim se izraunava apsolutna vrijednost cijelog broja. Uputstvo: Apsolutna vrijednost je udaljenost cijelog broja od nule. (|-3|=3, |3|= 3, |0|=0).

Primjer 7
Napisati algoritam za program s kojim se izraunava apsolutna vrijednost cijelog broja. Uputstvo: Apsolutna vrijednost je udaljenost cijelog broja od nule. (|-3|=3, |3|= 3, |0|=0). Algoritam: poetak ----------------------------------------------------upii A ako je A < 0 onda APS = (-1) A inae APS = A ispii APS ----------------------------------------------------kraj

Primjer 8
Napisati algoritam za program koji e ispisivati svaki prirodni broj u rasponu izmeu zadanih brojeva A i B. Pretpostavite da su A i B zadani tako da je A+1<B (treba ispisati barem jedan broj).

Primjer 8
Napisati algoritam za program koji e ispisivati svaki prirodni broj u rasponu izmeu zadanih brojeva A i B. Pretpostavite da su A i B zadani tako da je A+1<B (treba ispisati barem jedan broj). Algoritam:

poetak ----------------------------------------------------upii A, B X=A+1 ispii X X=X+1 ako je X < B onda vrati se na naredbu ispii X inae idi na kraj ----------------------------------------------------kraj

Primjer 9
Napisati algoritam za sabiranje prvih N prirodnih brojeva.

Primjer 9
Napisati algoritam za sabiranje prvih N prirodnih brojeva. Algoritam: poetak ----------------------------------------------------X=0 ZBROJ = 0 upii N X=X+1 ZBROJ = ZBROJ + X ako je X < N onda vrati se na naredbu X = X + 1 ispii ZBROJ ----------------------------------------------------kraj

Primjer 10
Napisati algoritam koji uitava N cijelih brojeva. Izraunati zbir svih pozitivnih i zbir svih negativnih brojeva.

Primjer 10
Napisati algoritam koji uitava N cijelih brojeva. Izraunati zbir svih pozitivnih i zbir svih negativnih brojeva. Algoritam: poetak ----------------------------------------------------upii N broj = 0 pozitivni = 0 negativni = 0 upii x ako je x > 0 onda pozitivni = pozitivni + x inae negativni = negativni + x broj = broj + 1 ako je broj < N onda vrati se na naredbu: upii x ispii pozitivni, negativni ----------------------------------------------------kraj

You might also like