Algoritma nedir sorusu genellikle yazılıma merak salanların önüne çıkan ilk sorulardan birisidir. Algoritma sadece yazılım alanında kullanılmasa da en yaygın kullanılan sektörlerden birisidir. İsim itibariyle biraz karışık bir konu gibi gelebilir. Aslında oldukça basit ve her yaştan insanın anlayabileceği kolaylıkta bir konudur. Stres yapmadan algoritmanın ne olduğunu nasıl yazıldığını hemen öğrenmeye başlayabilirsiniz.
Algoritma Nedir? Ne İşe Yarar?
Algoritma herhangi bir problemin çözümünde veya herhangi bir amaca ulaşmak için izlenilen düzenli ve sıralı yola denmektedir. A noktasından B noktasına varıncaya kadar yapılan tüm işlem ve eylemler aslında bir algoritmadır. Algoritma ne demek sorusuna daha kısa bir yanıt olarak, daha bilinen bir tabir ile “başlangıcı ve bitiş noktası olan işlemler bütünü algoritmadır” diyebiliriz.
İlk olarak matematik alanında Ebu Abdullah Muhammed İbn Musa el Hazimi’nin Algoritma terimini kullandığı bilinmektedir. Algoritma elbette her alanda kullanılabilir ve hayatı kolaylaştıran bir unsurdur. Günümüzde genellikle bilim, matematik ve yazılım geliştirme alanlarında kullanılmaktadır. Çünkü bu alanlarda çokça problemlerle karşılaşılır, problemlerin mükemmel seviyeye yakın bir şekilde çözülmesi gerekir. Aksi takdirde yapılan hataların bedeli ağır olabilmektedir.
Hatalarla karşılaşmamak, önceden problemlerin çözümünün zeminini hazırlamak için algoritmalar kesinlikle gereklidir. Algoritma yazmak için üç ayrı yöntem bulunmaktadır. Düz ifade, sözde kod ve akış şeması algoritma yazmak için tercih edilir. Tüm bu yöntemlerdeki ortak özellik işlemlerin sırasıyla ve düzenli olarak aktarılmasıdır.
Algoritma Nasıl Yazılır?
Algoritma nedir sorusunun yanıtını iyi kavradığınızı düşünüyor ve nasıl yazılacağını merak ediyorsanız aşağıdaki yönergelere uyarak algoritma hazırlayabilirsiniz.
- İlk olarak problemin net bir şekilde belirlenmesi gerekir.
- Sonuca yani problemin çözümüne ulaşmak için çözüm yollarının belirlenmesi ve en iyi yolun tercih edilmesi gerekir.
- Bazen bir problemi tek bir bütün halinde çözmek mümkün olmayabilir. Bu durumda problem alt dallara ayrılmalı, her birisi için uygun çözümler bulunmalıdır.
- Algoritmanın devamlı olabilmesi için veri girişi gereklidir. Veri girişini yapan bilgisayar veya bir kişi olabilir.
- Karar ve kontrol yapıları ile algoritmanın gidişatı belirlenmelidir. Örneğin A kişisi A verisini girerse A işlemi gerçekleştirilsin. Eğer A kişisi B verisini girerse, B işlemi gerçekleştirilsin. Burada en basit haliyle bir karar/kontrol mekanizmasına örnek verilmiştir.
- Başlangıçta tanımlanan veriler sonradan verilen karar ve işlemlerle de değiştirilebilir.
- Algoritmayı hazırlarken ilk etapta tahmin odaklı olabilirsiniz. Sonrasında ise algoritmanın doğru çalışıp çalışmadığını test etmelisiniz ve ortaya çıkan yeni problemlere göre geliştirmelisiniz.
Özellikle yazılım sektörü için temel seviyede algoritma nasıl yazılır sorusunun cevabı yukarıda verilmiştir. Bu yazıyı okumadan önce hiç algoritma örneklerine rastlamadıysanız yukarıdaki adımları algılamanız zor olabilir. Aşağıdaki örneklere göz atarak öğrendiğiniz teorik bilgiyi, pratiğe dökebilir ve daha hızlı bir şekilde kavrayabilirsiniz.
Algoritma Örnekleri
Algoritma nedir başlığı altında belirtildiği gibi düz ifade, sözde kod (pseudo code) ve akış şemasıyla algoritma hazırlanabilmektedir. Özellikle bireysel olarak algoritma yazmak isteyenler ilk etapta düz ifade ve sözde kod yöntemlerini tercih edebilir. Çünkü akış şemasında bilmeniz gereken bazı temel şekiller bulunmaktadır. Bu şekilleri öğrenmek, alışmak ve pratiğe dökmek zaman alabilir. Algoritma yazacağım ve geliştireceğim derken, akış şemasının yapısına alışmaya çalışmak zaman kaybı olabilir. Bu nedenle algoritma yazma konusunda tecrübe kazandıktan sonra akış şemasıyla algoritma hazırlamanız daha iyi olacaktır.
Düz ifade ve sözde kod için algoritma örnekleri aşağıda listelenmiştir;
Düz İfade Algoritma Örneği
Türk kahvesi hazırlamak için algoritma örneği.
- Başla
- Mutfağa git
- Cezveye fincan ile su koy
- Yemek kaşığı ile cezveye kahve koy
- İsteğine göre cezveye şeker at
- Cezvedeki kahveyi karıştır
- Ocağı yak
- Cezveyi ocağa koy
- Kahvenin kaynayıp taşma noktasına gelip gelmediğini kontrol et
- Eğer kahve kaynamadıysa 9. adıma geri dön.
- Eğer kahve kaynadıysa ocaktan al
- Kahveyi birkaç saniye sonra tekrar ocağa koy
- 9. adıma geri dön
- 10. adıma geri dön
- 11. adıma geri dön
- Kahveyi fincanlara dök
- Bitir
Sözde Kod Algoritma Örneği
Düz ifadede olduğu gibi sözde kod ile algoritma yazarken herhangi bir yazım kuralına uymanız gerekmez. Temel Türkçe bilgisi, problem hakkında matematik veya yazılım bilgisi ile sözde kod yazabilirsiniz.
Kullanıcı giriş işleminin sözde kod örneği;
- Kullanıcı adı ve şifresinin doğruluğunu veritabanından sorgula
- Eğer bilgiler doğruysa
3.1 Profil sayfasına yönlendir
3.2 Kullanıcı adı bilgisini kullanıcı adı ID’li anchor etiketine yazdır
- Eğer bilgiler yanlışsa
4.1 Sayfa içerisinde uyarı mesajı göster
Ne sözde kodun ne de düz ifadenin belirli bir standartı yoktur. Bazı kişiler C dili veya Basic dilinden esinlenerek sözde kod yazabilmektedirler. Sizde kullandığınız programlama dilinden esinlenerek sözde kodu yazabilirsiniz, burada herhangi bir programlama diline bağımlı kalmadan yazılan bir sözde kod örneği gösterilmiştir.
Algoritma nedir ve ne işe yarar gibi soruların yanıtını öğrendikten sonra bu konuda çok fazla pratik yapmalısınız. Algoritma hazırlanmadan bilim yapılabilir, matematiksel işlemler yapılabilir veya yazılımlar geliştirilebilir. Ancak ön hazırlık olmadığı, problem üzerine yeterince düşünülmediği ve çözüm için eksik çaba gösterildiği için verim kaybı yaşanır. Çizimleri ve planı olmayan bir evi yapmak ile çizimleri ve planı olan bir evi yapmak arasında dağlar kadar fark vardır. Çizimleri ve planı olmayan bir evi yaparken ortaya çıkabilecek sorunlar genellikle sürpriz niteliğinde olur. Eğer algoritmanız hazırsa, sorunların büyük kısmını zaten mantık olarak baştan çözmüşsünüz demektir. Geriye sadece plana göre tuğlaları üst üste koymak kalır. Hangi iş kolunda olursanız olun, planlı veya ön hazırlıklı çalışmanız veriminizi arttırır.