Algoritma Nedir?
Bilgisayara komut satırlarından oluşan kodlar bütünü yani program ile işlemler yaptırabilmek algoritma yardımıyla mümkündür. Algoritma, yapılması istenen bir işin aşamalarının ve bu aşamaların sırasının belirlenmesi ile oluşturulan yoldur. Algoritma tasarımının daha iyi anlaşılabilmesi için günlük hayatta da kullandığımız kek pişirme örneği verilebilir.
Basit kek pişirme algoritması:
- Başla
- Çırpma kabı al
- Un al
- Unu çırpma kabına koy
- Şeker al
- Şekeri çırpma kabına koy
- Yumurta al
- Yumurtayı çırpma kabına koy
- Yumurtayı kır
- Çırpıcı al
- Çırpıcı ile kaptakileri çırp
- Kek pişirme kabı al
- Çırpma kabındakileri kek pişirme kabına dök
- Kek pişirme kabını fırına ver
- Kek pişirme kabını fırından çıkar
- Bitir
Örneği verilen bu algoritma sonucu kek hazır hale gelir fakat algoritma detay içermediğinden kek, istenilen tam özelliklerde yemeye hazır olmayabilir. Kaç dk pişirileceği, çırpılacağı ve fırının kaç ℃ olması gerektiği gibi detayların da algoritmaya eklenmesi istenilen sonuca ulaşmaya yakınlaştırır. Algoritma mantığı değişmez, programlamada da aynı mantıkta kullanılır.
Akış Diyagramları
Programlama için yapılan algoritmanın daha kolay anlaşılabilmesi için akış diyagramı kullanılır. Akış diyagramında kullanılan şekillerin tanımları aşağıda açıklanmıştır.
1.Başla/Bitir
Yapılacak olan işlemler bu iki şekil arasında yazılır. ‘Başla’ ile tasarıma başlanırken ‘Bitir’ ile tasarım sonlanır.
2.Veri Girişi
Dışarıdan veri girişi yapıldığını belirten şekildir. Şekil içine birden fazla değişken ismi de yazılabilir. Şeklin içine ‘A’ yazılıp kullanıcının da programa ‘5’ girdiği düşünülürse bu işlem ‘A=5’ anlamındadır.
3.İşlem
İşlem şeklinin içerisine hesaplanması istenilen ifadeler yazılır. Birden fazla işlem tek şekil içerisine virgül aracılığıyla yazılabilir
4.Karar
Evet-hayır, doğru-yanlış gibi karar gerektiren karşılaştırma işlemlerinde kullanılır. İçinde yazılı olan şartın sonucuna göre işlemler gerçekleştirilir.
5.Döngü
İşlem bloklarının içerisine yazılan değerin istenen koşul sağlanıncaya kadar tekrarlanmasını temsil eder. Döngü şeklinin içerisine başlangıç, bitiş ve adım değeri yazılır.
6.Çıktı
Alfasayısal (cümle, kelime vs.) girdi yazdırılacak ise çift tırnak içerisinde (“Kernel” gibi), değişkenin içeriği yazdırılacak ise çift tırnak konulmadan değişken aynen yazılır.
7.Önceden Tanımlı İşlem
Birçok küçük programın birleştirilmesiyle oluşan büyük programlarda önceden yapılmış işlemlerin kullanılmak istenen kısıma tekrar yazılması yerine parametreli veya parametresiz olarak işlemin çağırılarak kullanılmasını sağlar. Aynı kodların tekrar yazılmaması programın çalışmasında olumlu bir etkendir. x’in değeri ile ilgili önceden fonksiyon yazıldığı varsayılırsa tekrar kullanımı Şekil 7’deki gibi gösterilir.
8.Bağlantı
İşlemleri birleştiren şekildir. Ayrı çizilen akış diyagramları arasında bağlantı kurma, sayfaya sığmayan akış diyagramını diğer sayfadakiyle birleştirme gibi farklı işlemlerde kullanılır.
9.İşlem Akış Yönleri
Akışın hangi yönde olduğunu belirten oklardır.