Akış Diyagramlarının Temelleri

Yazılım alanında en çok ihtiyaç duyulan şey, kodlama bilgisinden ziyade güçlü bir algoritma bilgisidir.
Bir algoritmayı iyi kurgulayan bir yazılımcı, hangi programlama dilini kullanırsa kullansın, o dili sadece iyi bilen birinden çok daha verimli kodlar yazabilir.

Bu konuda verilebilecek en etkileyici örneklerden biri Google’dır.
Arama motoru piyasasında “Yandex”, “Yahoo” veya “Bing” gibi birçok rakibi bulunmasına rağmen Google, en hızlı ve en verimli sonuçları sunar.
Google’ı rakiplerinden ayıran temel fark, arkasında yatan güçlü algoritma yapısıdır.

Kurucuları Larry Page ve Sergey Brin, geliştirdikleri algoritma sayesinde kullanıcıların aradığı bilgilere en doğru ve en kısa yoldan ulaşmasını sağlamışlardır.
İşte algoritmanın gücü tam olarak burada ortaya çıkıyor. Verimlilik, hız ve doğru sonuç.


🧭 Akış Diyagramı Nedir?

Algoritmaları sadece metinle değil, görsel olarak da ifade etmek mümkündür.
Bir algoritmayı yazmadan önce, yapılacak işlemleri adım adım planlayabilmek için akış diyagramları kullanılır.

Akış diyagramı, bir problemin çözüm adımlarını geometrik şekiller aracılığıyla gösteren görsel bir anlatım yöntemidir.
Bu diyagramlar, algoritmanın mantığını sadeleştirir ve herkes tarafından anlaşılabilir hale getirir.

Akış diyagramları hem basit işlemler için kullanılabilir, hem de karmaşık algoritmaların tüm detaylarını içerecek şekilde genişletilebilir.
Bu yüzden yazılım geliştiriciler, bir programa başlamadan önce akış diyagramlarını hazırlayarak kodlama sürecinde hata payını büyük ölçüde azaltırlar.

Tüm şekilleri kullanabileceğimiz bir örnek ile bunu pekiştirelim.

Örnek: Kullanıcının girdiği sayı pozitifse 10 çıkaran, negatifse 5 ekleyen ve sayı sıfırsa 15 ile çarpan ve sonucu ekrana yazdıran programın algoritma akış şemasını çiziniz.

Girdi: sayı -> Kullanıcının girdiği sayı
Çıktı: toplam, çarpım, çıkartma -> Algoritmanın sonucunda ekrana yazdırılacak veri
Matematik: sayı + 10 , sayı – 5 , sayı * 15
Kontrol: sayı > 0 , sayı < 0 , sayı == 0
Tekrar: Tekrarın kullanılmasına gerek yok

Soruyu çözümlediğimize göre artık akış şemasını oluşturabiliriz.

Yukarıdaki akış şemasında da görebileceğimiz gibi kullanıcının girdiği sayı öncelikle sayı > 0 koşulunda değerlendirilip sonucun evet olması durumunda 10 ile toplanır ve sonuç ekrana yazdırılır. Eğer kullanıcının girdiğ sayı < 0 koşulunda değerlendirilip sonucun evet olması durumunda sayıdan 5 çıkarılır ve sonuç ekrana yazdırılır. Her iki durumun olmaması sonucu yani sayı == 0 ise sayı 15 ile çarpılır ve sonuç ekrana yazdırılır.

Yukarıdaki gibi algoritma akış şemaları kullanarak karmaşık problemler çözümlenebilir ve bu şemalar doğrultusunda kodlama işlemleri yapılır. Böylece temiz kod yazılarak kod karmaşıklığının önüne geçilir, ayrıca projenin daha sonra yenilenmesi ve güncellenmesi durumlarında bunun gibi şemalardan da yararlanılabilir.