osobine · web view2018/10/30  · osobine dobrog algoritma dobro napisan algoritam mora poštovati...

9
Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost, masovnost i optimalnost. Diskretnost Algoritam se sastoji od konačnog broja posebnih koraka (algoritamski koraci). Svaki korak može zahtevati obavljanje jedne ili više operacija. U zavisnosti od toga koje operacije računar može da obavi, uvode se ograničenja za tip operacija koje se u algoritmu mogu koristiti (najčešće sabiranje, oduzimanje, množenje, deljenje). Determinisanost

Upload: others

Post on 30-Mar-2021

16 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Osobine · Web view2018/10/30  · Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost,

Osobine dobrog algoritma

Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost, masovnost i optimalnost.

Diskretnost

Algoritam se sastoji od konačnog broja posebnih koraka (algoritamski koraci). Svaki korak može zahtevati obavljanje jedne ili više operacija. U zavisnosti od toga koje operacije računar može da obavi, uvode se ograničenja za tip operacija koje se u algoritmu mogu koristiti (najčešće sabiranje, oduzimanje, množenje, deljenje).

Determinisanost

Svaki algoritamski korak mora biti strogo definisan i potpuno jasan. Na primer, izrazi tipa: "izračunaj pet podeljeno sa nulom" ili "dodaj 6 ili 7 puta" nisu dozvoljeni. Posle izvršenja tekućeg algoritamskog koraka, mora biti jednoznačno definisano koji je sledeći korak. 

Efektivnost ili konačnost

Page 2: Osobine · Web view2018/10/30  · Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost,

Sve operacije koje se javljaju u jednom algoritamskom koraku moraju se izvršiti za konačno ili razumno kratko vreme. Vreme izvršenja celog algoritma mora biti konačno, to jest razumno dugo.

Rezultativnost

Svaki algoritam mora posle konačnog broja koraka generisati rezultat. Algoritam može imati nula ili više ulaznih podataka i može generisti jedan ili više izlaznih rezultata.

Masovnost

Svaki algoritam definiše postupak za rešavanje klase problema, a ne pojedinačnog slučaja. Na primer, rešavanje sistema jednačina bilo kog reda, množenje matrica proizvoljnog reda, itd. 

Optimalnost

Ključne osobine jednog algoritma, međusobno povezane, bile bi:

Vremenska kompleksnost - koliko brzo? Prostorna kompleksnost - koliko memorije? Kompleksnost koda - lakoća razumevanja i snalaženja u kodu?

Page 3: Osobine · Web view2018/10/30  · Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost,

Zadatak prikazan iznad, neće biti na usmenom!

Page 4: Osobine · Web view2018/10/30  · Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost,

Izračunati dijagonalu kvadrata:

Page 5: Osobine · Web view2018/10/30  · Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost,

Unose se tri broja: a, b i c. Otkriti i ispisati najmanji broj.

Page 6: Osobine · Web view2018/10/30  · Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost,

Nevaljali učenici su iščupali tastere “<” i “>” sa tastature. Potrebno je uporediti dva unijeta cijela pozitivna broja, A i B (dakle, da se napiše koji je veći, odnosno manji), bez upotrebe relacija “<”, “>”, “<=” i “>=”.

Page 7: Osobine · Web view2018/10/30  · Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost,

KAKO CIKLUS FUNKCIONIŠE?

MJESTO PROVJERE USLOVA

Page 8: Osobine · Web view2018/10/30  · Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost,
Page 9: Osobine · Web view2018/10/30  · Osobine dobrog algoritma Dobro napisan algoritam mora poštovati sledeća pravila: diskretnost, determinisanost, efektivnost ili konačnost, rezultativnost,