Matematik ve bilgisayar biliminde kullanılan sonlu işlemler kümesidir. Kısacası yapılacak iş için çizilen yoldur. Tüm programlama dillerinin temeli algoritmaya dayanır.
Algoritma sözcüğü, Özbekistan'ın Harezm, bugünkü Türkmenistan'ın Khiva kentinde doğmuş olan Ebu Abdullah Muhammed İbn Musa el Harezmi adındaki İran'lı alimden kaynaklanır. Bu alim 9. yüzyılda cebir alanındaki algoritmik çalışmalarını kitaba dökerek matematiğe çok büyük bir katkı sağlamıştır. "Hisab el-cebir ve el-mukabala" kitabı dünyanın ilk cebir kitabı ve aynı zamanda ilk algoritma koleksiyonunu oluşturur. Latince çevirisi Avrupa'da çok ilgi görür. Alimin ismini telaffuz edemeyen Avrupalılar "algorizm" sözcüğünü "Arap sayıları kullanarak aritmetik problemler çözme kuralları" manasında kullanırlar. Bu sözcük daha sonra "algoritma"ya dönüşür ve genel kapsamda kullanılır.
Temel bir örnekle açıklayayım algoritmayı;
Yumurta yapma ile ilgili bir algoritma
- Başla
- Tavayı ocağa koy
- Tavaya yağ koy
- Ocağı aç
- Yumurtayı kır
- Yumurtanın pişmesini bekle
- Yumurta pişmişse ocağı söndür, pişmemişse 6. adıma geri dön
- Bitir
Algoritma Hazırlarken İzlenmesi Gereken Adımlar
Algoritma hazırlarken doğruluğu kesin olmayan, tahmin ve ön yargılardan kaçının.
Karşılaştığınız sorunun çözümüne ulaşmak için en ufak ayrıntılarına kadar ayırın o sorunu.
Anlaşılması en kolaydan başlayıp karmaşığa doğru gidin.
Algoritmanın daha kolay anlaşılması için akış diyagramlarından yararlanılır.
Basit bir örnek vermek gerekirse
Kısacası bir program yazacakken o programın her ayrıntısını yazmaya başlamadan önce düşünüp bir algoritma çıkarılması gereklidir.
Bu bize yaptığımız işi daha planlı ve düzenli bir şekilde yapmamızı sağlar.
Program yazmak için extra bir şeye ihtiyacınız yoktur. Program yazmak için not defterini bile kullanabilirsiniz. Önemli olan yazdığınız kodu derlemektir. Derlemeye "compile" ve derleme işini yapan derleyiciyeyse "compiler" denir.
Ayrıca yorumlayıcılar (interpreter) da vardır.
Basitçe, bir kaynak kodu hedef koda çevirdikten sonra çalıştıran ve dolayısıyla koddaki hataları yakalama işlemini ve kodun iyileştirilmesini daha kod çalıştırmadan yapan çeviricilere derleyici, kodu satır satır veya bloklar halinde çalıştırıp sırası gelmeyen satırları hiç çalıştırmayan bu satırlardaki hataları hiçbir zaman göremeyen ve kodun bütününe ait iyileştirmeleri yapamayan çeviricilere de yorumlayıcı (interpreter) adı verilmektedir.