Algoritma Nedir?

Herkese merhaba, yeni bir yazı ile karşınızdayım. Kısaca algoritmanın ne olduğunu ve nasıl algoritma hazırlanması gerektiğini anlattım.

Algoritma Nedir?

Öncelikle “algoritma” kelimesinin nereden geldiğine bakalım. İlk algoritma, el Harezmi tarafından “Hisab el-cebir ve el-mukabala” kitabında sunulmuştur. Algoritma sözcüğü de El Harizmi’nin isminin Avrupalılarca telaffuzundan doğmuştur.

Algoritma, bir sorunu yada bir problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne denir. Algoritma, basit ve anlaşılır olmalıdır. Kısaca algoritma bir sorunun çözümü için izlenecek yolun tanımıdır. Bir sorunun birden fazla algoritması yapılabilir. Algoritma bir programlama dili değildir. Yani yazdığımız aşamalarını bir yere yazdığımızda çalışmaz. Her dil için algoritma yazılıp uygulanabilir.

Algoritmayı hazırlamadan önce yapacağımız bazı işlemle vardır. Öncelikle soruyu anlamamız lazım. Eğer soruyu anlayamazsak algoritmasını yapamayız. Daha sonra değişken tanımı. Değişkenlerimiz tanımlarken Türkçe karakter kullanmıyoruz (Mesela İ – Ö – Ç – Ğ – Ü – Ş – ı – ö – ş – ğ – ü ) ve bütün harfleri büyük yazıyoruz. Algoritmada aşamaları belirtmek için Adım X. gibi bir sıralama kullanıyoruz. Bunu AX diye kısaltıyoruz. Örnek olarak  A1. gibi bunlar sırayla devam eder. Algoritmanın A0. BASLA ve en son aşama durdurma aşamasıdır. A2. DUR. Değişken adlandırmasını seçerken anlamlı olmasına dikkat etmemiz gerekiyor.

ALGORİTMA HAZIRLAMA

Algoritma hazırlarken işlemlerimiz normal yapıyoruz. Eğer kullanıcıdan bir değer alacaksak onu OKU ile yani emir vererek yapıyoruz. Mesela SAYI OKU diyerek kullanıcıdan bir sayı okutuyoruz. Buradaki SAYI bizim değişkenimiz oluyoruz. Yani kullanıcıdan bir sayı alıyoruz ve onu SAYI değişkenine aktarıyoruz. Yazdırma işlemi için ise YAZ diyerek yazpıyoruz. Mesela SAYI YAZ dediğimizde SAYI değişkeninin içerisinde olan değeri ekrana yazıyor.

Atama ve Birleşik Atama İşlemi (Aktarma)

Algoritmada atama işlemi için “=” kullanıyoruz. Bu eşittir, matematikten bildiğimiz eşittirden farklıdır. Sağdaki değeri al soldaki değişkene aktarma anlamı taşır. Örnek olarak SAYI = 5 dediğimizde. 5 değerini al SAYI değişkenine aktar demiş oluyoruz.

Eğer aynı değişken ile aritmetiksel bir işlem yapacaksak birleşik atama işlemi yapabiliriz. Bunları aşağıda listeledim.

Açıklama Kullanımı Açılımı
+= topla sonra aktar A += B A = A + B
-= çıkar sonra aktar A -= B A = A – B
*= çarp sonra aktar A *= B A = A * B
/= böl sonra aktar A /= B A = A / B
%= modül al sonra aktar A %= B A = A % B

Bir Arttırma ve Bir Azaltma İşlemi

Aynı değişken üzerinden bir arttırma veya bir azaltma işlemi yapmak için A = A +1 diye atama işlemini yapıyoruz. Bunu yazması biraz zamanımızı alıyor. Bunun için daha bir kısa yöntem var. A++ veya A– bunu kısaca yazdığımız işlemin anlamı A değişkenini bir arttır. Çıkan sonucu tekrar A değişkenine aktar.

Karşılaştırma İşlemi

İki değişkeni karşılaştırmak için “>”, “<“, <=”, “>=” ve “==” operatörlerini kullanabiliriz. Bunlar algoritmasını yazacağımız dile göre artabilir. Karşılaştırdıktan sonra TRUE veya FALSE döner. Bunu Türkçeye doğru/yanlış veya evet/hayır diye çevirebiliriz.

Şimdilik bunlar basit bir algoritma yazmak için yeterli bir bilgidir.

Algoritmanın Özellikleri

Yaptığımız bütün algoritmalar aşağıdaki özellikleri uymalıdır.

  • Girdi : Sıfır veya daha fazla değer dışarıdan verilmeli.
  • Çıktı : En azından bir değer üretilmeli.
  • Açıklık : Her işlem (komut) açık olmalı ve farklı anlamlar içermemeli.
  • Sonluluk : Her türlü olasılık için algoritma sonlu adımda bitmeli. (İşletim sistemleri gibi programlar için geçerli değil)
  • Etkinlik  : Her komut kişinin kalem ve kağıt ile yürütebileceği kadar basit olmalıdır.

Örnekler

Örnek: İki sayıyı toplayan ve bunu ekrana yazan algoritmayı yapınız.

Öncelikle soruyu anlayalım. İki tane sayıyı kullanıcıdan alacağız. Bunlara SAYI ve SAYI2 diyebiliriz. Yapacağımız işlem toplama işlemi olduğu için toplamadan çıkan sonucu tutan bir de TOPLAM değişkenimiz olacak. Hemen yazmaya başlayalım.

A0. BASLA
A1. SAYI OKU
A2. SAYI2 OKU
A3. TOPLAM = SAYI + SAYI2
A4. TOPLAM YAZ
A5. DUR

Örnek 2: Üç sayıyı toplayan ve bunu ekrana yazan algoritmayı yapınız.

3 tane sayıyı kullanıcıdan alacağız. Bunlara SAYI1, SAYI2 ve SAYI3 olacak. Yapacağımız işlem toplama işlemi olacak. Toplama işleminden çıkan sonucu tutan bir de TOPLAM değişkenine ihtiyacımız olacak.

A0. BASLA
A1. SAYI OKU
A2. SAYI2 OKU
A3. SAYI3 OKU
A4. TOPLAM = SAYI + SAYI2 + SAYI3
A5. TOPLAM YAZ
A6. DUR

Örnek 3: Girilen sayının karesini, küpünü hesaplayan ve bunu ekrana yazan algoritmayı yapınız.

Öncelikle kullanıcıdan alacağımız bir sayı için SAYI değişkenine ihtiyacımız var. Karesinin sonucu tutmak için KARE değişkenine, küpünü tutmak için KUP değişkenine ihtiyacımız var. (Dilden dile fonksiyonlar değişebilir.)

A0. BASLA
A1. SAYI OKU
A2. KARE = pow(SAYI,2)
A3. KUP = pow(SAYI,3)
A4. KARE,KUP YAZ
A5. DUR

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir