Algoritam
U matematici i računarskoj nauci, algoritam je određeni skup definisanih naredbi za obavljanje nekog zadatka. Algoritmi se koriste u računarskim programima kao način rješavanja nekog zadatka. Algoritam također može značiti grafički prikaz toka obrade ili skup instrukcija računarskog programa (tad se preciznije naziva dijagram toka). On predstavlja vodilju za programera koji pomoću algoritama predstavlja viziju programa koji želi napisati u programskom jeziku.
Algoritam se može predstaviti u nekoliko načina, mada je najbolja blog dijagram ili organogram, pored te se još javljaju i predstavljanje u obliku govora i tabelarno. Predstavljanje govorom nije toliko preporučljivo jer ne govore svi istim jezikom pa tu moze doći do spora pri razumijevanju algoritma.
Koncept algoritma se obično ilustruje pojednostavljeno, iako je u stvarnosti veoma komplikovan. Algoritmi sadrže stepenice koje se ponavljaju ili zahtijevaju odluke koje propisuje programer. Koncept algoritma je dobio formu 1936. preko Turingovih mašina i Alonzo Churchovog lambda calculusa, koji su praktično udarili temelje računarske nauke. Većinu algoritama je moguće implementirati u računarski program.[1]
Primjer
[uredi | uredi izvor]Ovo je jedan od jednostavnijih primjera algoritma napisanog u bosanskom jeziku (ne u programskom kodu, tzv. pseudo algoritam). Određuje da li je zadati broj n paran ili neparan:
- POČNI
- Pročitaj vrijednost n.
- Podijeli n sa 2 i zapamti ostatak u rem.
- Ako je rem 0 idi na stavku 7.
- Ispiši „n je neparan broj“.
- Idi na stavku 8.
- Ispiši „n je paran broj“.
- KRAJ
Izvori
[uredi | uredi izvor]- Bellah, Robert Neelly (1985). Habits of the Heart: Individualism and Commitment in American Life. Berkeley: University of California Press. ISBN 978-0-520-25419-0.
- Berlinski, David (2001). The Advent of the Algorithm: The 300-Year Journey from an Idea to the Computer. Harvest Books. ISBN 978-0-15-601391-8.
- Chabert, Jean-Luc (1999). A History of Algorithms: From the Pebble to the Microchip. Springer Verlag. ISBN 978-3-540-63369-3.
- Thomas H. Cormen; Charles E. Leiserson; Ronald L. Rivest; Clifford Stein (2009). Introduction To Algorithms (3rd izd.). MIT Press. ISBN 978-0-262-03384-8.
- Harel, David; Feldman, Yishai (2004). Algorithmics: The Spirit of Computing. Addison-Wesley. ISBN 978-0-321-11784-7.
- Hertzke, Allen D.; McRorie, Chris (1998). "The Concept of Moral Ecology". u Lawler, Peter Augustine; McConkey, Dale (ured.). Community and Political Thought Today. Westport, CT: Praeger.
- Knuth, Donald E. (2000). Selected Papers on Analysis of Algorithms Arhivirano 1. 7. 2017. na Wayback Machine. Stanford, California: Center for the Study of Language and Information.
- Knuth, Donald E. (2010). Selected Papers on Design of Algorithms Arhivirano 16. 7. 2017. na Wayback Machine. Stanford, California: Center for the Study of Language and Information.
- Wallach, Wendell; Allen, Colin (novembar 2008). Moral Machines: Teaching Robots Right from Wrong. US: Oxford University Press. ISBN 978-0-19-537404-9.
- Bleakley, Chris (2020). Poems that Solve Puzzles: The History and Science of Algorithms. Oxford University Press. ISBN 978-0-19-885373-2.
Reference
[uredi | uredi izvor]- ^ Blair, Ann, Duguid, Paul, Goeing, Anja-Silvia and Grafton, Anthony. Information: A Historical Companion, Princeton: Princeton University Press, 2021. p. 247