Turki @ CMUQ
Theory and algorithms
Etymology of the word “Algorithm”:
The Persian astronomer and mathematician, Al-Khawarizmi, wrote a treatise in Arabic called “On Calculation with Hindu Numerals”. When it was translated to Latin its title became “Algoritmi de numero Indorum” (“Algoritmi on the numbers of the Indians”, Algoritmi was the transliteration of Al-Khawarizmi), but some people misunderstood Algoritmi as a Latin plural; thus the word “algorithm” was born to mean “calculating method”.
Current meaning of the word “Algorithm”:
While no generally accepted formal definition exists yet, the word is commonly used to refer to a program that computes something in a number of steps that may contain flow control elements like loops or conditions. A prototypical example is Euclid's algorithm to determine the maximum common divisor of two integers greater than one: "subtract the smallest number from the biggest one, repeat until you get a zero or a one".
Currently, algorithms expand to cover more problems than pure mathematical ones. For example one can create an algorithm that makes financial decisions based on the current situation.
Notation of algorithms:
There are a number of ways to express an algorithm: