ALGORİTMA VE AKIŞ ŞEMASI
Algoritma ve Akış Şeması
Günlük yaşamda karşılaştığımız problemleri bilerek veya farkında olmadan adım adım çözmeye çalışırız. Bilgisayarlar da problemleri tıpkı bizler gibi çözmeye çalışır. Kullanıcı tarafından kendisine verilen komutları adım adım uygulayarak problemin çözümüne ulaşır. Kullandığımız yazılımların tamamı «kod» adı verilen bilgisayarın anlayacağı dilde yazılmış özel komutlardan oluşur. Bu kodlar bilgisayar yazılımcıları tarafından yazılır.
Kodlamaya Başlamadan Önce…
Kodlamaya başlamadan önce oluşturacağımız yazılımın adım adım ne yapacağını tasarlamamız gerekir. İşte açık ve net ifadelerle problemin adım adım çözümünü gösteren bu taslağa «Algoritma» adı verilir. Programlamanın ilk adımı algoritma oluşturmaktır. Algoritma basamaklarının bir başlangıcı ve sonu bulunur. Her adımda yapılacak işlem açıkça belirtilir.
Algoritmanın Tarihi
Algoritma sözcüğü, 9. yüzyılda Özbekistan’ın Harezm, bugünkü Türkmenistan’ın Hive kentinde doğmuş olan Ebu Abdullah Muhammed İbn Musa el Harezmi’den gelir. Al-Khwarizmi, kitapları aracılığıyla Hint-Arap sayı sistemini Avrupa'ya tanıttı ve cebirsel ifadeleri çözmek için sistemli bir yaklaşım geliştirdi. Bu metodoloji, "Algoritma" teriminin kökenini oluşturdu. Al-Khwarizmi'nin çalışmaları, bilgisayar bilimleri ve matematikteki temel kavramların oluşmasında etkili oldu ve onu algoritmik düşünceye önemli bir katkı sağlayan bir figür haline getirdi.
Neden Algoritma Kullanıyoruz? Unutmayın bir problemin birden çok çözüm yolu olabilir!
Yapacağımız işin algoritmasını çıkarmak o işi detaylı düşünmemizi ve küçük parçalar halinde daha kolay yapmamızı sağlar. Oluşturacağımız yazılımın kusursuz olması için öncelikle her adımını gösteren planını, yani algoritmasını hazırlamalıyız.
Örneğin; algoritma-plan kullanılmazsa…
Algoritmaların Özellikleri
1. Başla ile başlamalı ve Bitir ile bitmeli
2. Basit olmalı
3. Problemin çözümünü mümkün olan en az adımla, en kısa sürede gerçekleştirmeli
4. Adımlar açık ve anlaşılır olmalı
5. Adımların sıralaması çok önemli
5. Uygulanabilir olmalı
Sonu olmayan çözüm önerilerine algoritma değil sonsuz döngü denir.
Akış Şeması
Bilgisayar programlarının işlem basamaklarını geometrik şekillerle gösteren şemadır. Algoritmanın daha rahat anlaşılabilmesi için şemalarla gösterilmesidir. Şemada yer alan her şeklin bir kullanım amacı vardır. Her hangi bir sorunun çözümü için izlenecek yolun adımlarının çizilmesidir.
algoritmanın, görsel olarak simge ya da sembollerle ifade edilmiş şekline “akış şemaları” veya FLOWCHART adı verilir. Akış şemalarının algoritmadan farkı, adımların simgeler şeklinde kutular içine yazılmış olması ve adımlar arasındaki ilişkilerin ve yönünün oklar ile gösterilmesidir.
Programın saklanacak esas belgeleri olan akış şemalarının hazırlanmasına, sorun çözümlenmesi sürecinin daha kolay anlaşılır biçime getirilmesi, iş akışının kontrol edilmesi ve programın kodlanmasının kolaylaştırılması gibi nedenlerle başvurulur. Uygulamada çoğunlukla, yazılacak programlar için önce programın ana adımlarını (bölümlerini) gösteren genel bir bakış akış şeması hazırlanır. Daha sonra her adım için ayrıntılı akış şemalarının çizimi vardır.
Akış Şeması Şekilleri
Örnek 1: Yazı yazarken kaleminizin ucu kırıldığında şu adımları takip ederek bu sorunu çözersiniz.
Adım 1: Başla.
Adım 2: Kalemtıraşı çıkar.
Adım 3: Kalemi al.
Adım 4: Çöp kovasının yanına git.
Adım 5: Kalemin ucunu aç.
Adım 6: Sırana geri dön.
Adım 7: Yazmaya devam et.
Adım 8: Bitir.
Örnek 2: Ayran yapmak için aşağıdaki adımları takip ederek bu sorunu çözebiliriz:
Adım 1: Başla
Adım 2: Yoğurdu kaba koy.
Adım 3: Su ekle.
Adım 4: Çırp.
Adım 5: Tuz koy.
Adım 6: Bardağa doldur.
Adım 7: Bitir.
Örnek 4: Yazın hava çok sıcak ve sıcaktan bunalıyorsunuz. Sıcaktan bunalma probleminin çözümü için aşağıdaki adımları takip ederek sorunu çözebilirsiniz.
Adım 1: Başla
Adım 2: Sıcaktan Bunalıyor musun?
Adım 3: Evet ise Adım 5’e git
Adım 4: Hayır ise Adım 6’ya git
Adım 5: Bir bardak su iç
Adım 6: Bitir.






Klavyeden girilen iki sayıyı toplayıp ekrana yazdıran programın akış şemasını ve algoritması:
Adım 1: Başla
Adım 2: İlk sayıyı gir.
Adım 3: İlk sayı = A
Adım 4: İkinci sayıyı gir.
Adım 5: İkinci sayı = B
Adım 6: İki sayıyı topla (A+B)
Adım 7: Sonucu ekranda göster.
Adım 8: Bitir.

Örnek 3: Arabayı çalıştırıp yola çıkmak için aşağıdaki adımları takip ederek bu sorunu çözersiniz.
Adım 1: Başla
Adım 2: Sürücü koltuğuna geç.
Adım 3: Emniyet kemerini tak.
Adım 4: Aynaları kontrol et.
Adım 5: Anahtarı tak.
Adım 6: Kontağı çevir.
Adım 7: El frenini indir.
Adım 8: Vitese geç.
Adım 9: Gaza bas.
Adım 10: Bitir.
Hava yağmurlu ise bizi şemsiye almamız konusunda uyaran programın programın akış şemasını ve algoritması:
Adım 1: Başla
Adım 2: Hava yağmurlu mu?
Adım 3: Evet ise Adım 5’e git.
Adım 4: Hayır ise Adım 6’ya git.
Adım 5: Yanına şemsiye al.
Adım 6: Şemsiyeyi evde bırak.
Adım 7: Bitir.

Bir öğrencinin klavyeden girilen iki notunun ortalamasını hesaplayan ve çıkan sonuca göre notun iyi veya kötü olduğunu ekrana yazdıran programın algoritmasını ve akış şemasını hazırlayınız. (Ortalama 70’ten büyük ise İYİ, küçük ise KÖTÜ kabul edilecek.)

