back to top

Algoritma Nedir? Niçin Kullanılır? Algoritma Örnekleri

Merhaba arkadaşlar, bu yazımızda sizlere matematikte ve programlamada sıkça karşımıza çıkan algoritma teriminden bahsedeceğim.

Algoritma Kavramını Öğrendikten Sonra Bir Dil Öğrenerek Programlamya Başla! >>>>Programlama Dillerini İncele ve Senin için Doğru Olanı Bul 🙂
Çocukların Algoritma Mantığını Kavramaları için Neler Yapılıyor? >>>>Çocuklar için Kodlama Yazımızı İnceleyebilirsiniz 🙂

Algoritma Nedir? Ne Demek?

Bir sorunu çözmek veya belirlenmiş bir amaca ulaşmak için tasarlanan yola, takip edilen işlem basamaklarına algoritma denir.

Algoritmalar açıkça belirtilmiş bir başlangıcı ve  sonu olan işlemler kümesidir. Amaca ulaşmak için işlenecek çözüm yolları ve sıralamaları belirlenir ve algoritma bu sırayı takip ederek en mantıklı çözüme ulaşır.

İlk algoritma, El-Harezmi’nin ‘Hisab-el Cebir ve El Mukabala’ kitabında sunulmuştur ve algoritma kelimesi de El-Harezmi’nin isminden gelmiştir. Algoritma terimi genellikle matematikte ve bilgisayar bilimlerinde karşımıza çıkmaktadır.

Algoritma Niçin Kullanılır? Ne İşe yarar?

Algoritma matematikte bir sonuca ulaşmak için takip edilmesi gereken işlem basamaklarını belirlemede kullanılır. Örneğin, 3 ve 5 sayılarının ortalamasını bulmak istediğinizde önce (3+5) işlemini yaptıktan sonra sırada “çıkan sonuç/2” işlemini yapmanız gerekmektedir.

Bilgisayar biliminde algoritmalar yazılımdaki her yerdeler.

Örneklendirecek olursak, bilgisayarda offline olarak yapılan tüm işlemler, oynanan oyunlar, çalıştırılan programlar, web siteleri, mobil uygulamalar, robotlar… Kısacası sanal ortamdaki her işlem algoritmalar ile gerçekleşiyor. Gelin beraber algoritma ile programlama arasındaki bağlantıyı inceleyelim.

Algoritma ve Programlama Bağlantısı

Tüm programlama dillerinin temelinde algoritma vardır. Algoritmalar, programlama dillerinin vasıtasıyla uygulanabilirler.

Programda kullanılan dil ve kullanım alanı ne olursa olsun algoritması olmayan bir program yoktur. Programda bir algoritmanın işlemesi için dışarıdan gelen tüm girdiler “değişken” olarak tanımlanır. Algoritmadaki döngüler ve işlemler, bu değişkenler üzerinden gerçekleşir.

Algoritmadaki tüm ihtimaller belirtilmiş ve net olmalıdır. Hiçbir ihtimal şansa bırakılmamalıdır.

Akış Diyagramları – Şemaları

Her algoritma kağıt halinde yazılabilecek şekilde basit olmalıdır. Algoritmalar metin olarak düz yazı ile veya akış diyagramları ile gösterilebilirler.

Akış diyagramları, algoritmanın işleyişini neden-sonuç ilişkisini göstererek sırayla aktarılmasını sağlar.

Basit Algoritma Örnekleri, Şekilleri ve Çözümleri

Yazımızın son kısmında sizlere metin halinde ve akış diyagramı şeklinde 2 farklı algoritma örneği göstermek istiyorum.

Örnek 1 : Kullanıcı tarafından belirlenen 3 farklı sayının ortalamasını alalım.

Bu algoritmadaki değişkenlerimiz : x, y, z, sonuc

1: Başla.
2: x sayısını gir.
3: y sayısını gir.
4: z sayısını gir.
5: sonuc = (x+y+z)/3 işlemini yap.
6: sonuc değişkenini göster.
7: Dur.

Örnek 2 : Yükseklik ve taban uzunluğu klaveden girilen üçgenin alanını hesaplayan uygulamanın algoritmasını bulalım.

1: Başla
2: Sayısal ( yükseklik ve taban )
3: Ondalıklı (alan)
4: Yaz (‘’yükseklik nedir’’)
5: Yükseklik <-     oku()
6: Yaz (‘’taban uzunluğu nedir ‘’)
7: Taban <-         oku()
8: Alan = (yükseklik*taban) /2
9: Yaz ( alan )
10: Dur 

Örnek 3 : Bir iletkenin kutupları arasındaki gerilim (V) iletkenden geçen amper türünde akım (I) iletken üzerinde var olan direncin (R) çarpımına eşittir. V=I*R formülüyle gösterilir. Formülden faydalanarak kullanıcı tarafından girilen akım ve direnç değerlerine göre iletkenin kutupları arasındaki gerilimi hesaplayan programın algoritmasını bulalım.

1: Başla
2: Sayısal ( V,I,R)
3: Yaz (‘’akım nedir’’)
4: I <-      OKU()
5: Yaz (‘’direnç nedir’’)
6: R   <-    oku ()
7: V = I*R
8: Yaz (V)
9: Dur


Örnek 4: 1’den 100’e kadar tek sayıları yazdıran programın algoritmasını yazalım.

1: Başla
2: Sayac=1
3: Toplam=0
4: EĞER Sayac Mod2 != 0 İSE
5: YAZ Sayac
6: Sayac=Sayac+1
7: Eğer Sayac<100 ise Git Adım 4
8: Dur.

Örnek 5 : Daha önce yaptığımız Engelden Kaçan Robot uygulamasındaki algoritmayı inceleyelim. Robottaki sensörün gördüğü mesafe değeri 15 cm’den büyük ise ileri gitsin, 15 cm’ye eşit veya 15 cm’den küçük ise robot sağa dönsün.

Engelden Kaçan Robot Algoritması

Algoritma Öğrenmenize Yardımcı Olacak Ürünler

Algoritma ve programlama arasındaki bağlantıyı öğrendin, şimdinin ve geleceğin mesleği olan yazılımı tam anlamıyla öğrenmen için algoritma kavramını biraz daha geliştirmen gerekiyor. Bu nedenle sana tavsiye edebileceğimiz birkaç ürün grubu var!

Makeblock mBot

Algoritma oluştururken ve bir algoritma dizisini yazılıma döktükten sonra uygulamalar ile karşılığını görebilmek öğrenmeye daha çok motive eden en önemli unsurlardan biridir. Bu sebeple öğrenciler ve programlamaya yeni başlayanlar sıkça fiziksel ortamda çalışmaların yapıldığı robotik-kodlama uygulamalarına yönlendirilirler. Çünkü bilgisayar ortamındaki veri çıktısından daha somut karşılıklar elde edilir. Makeblock markasının mBot robot kiti de başlangıç seviyesi için en ideal ürün setlerinden biridir.

mBot, sürükle-bırak mantığı ile algoritmaların oluşturulduğu grafiksel programlama dili olan Scratch tabanlı bir yazılım arayüzüne sahiptir. Yapısal olarak da kolay sökülüp monte edildiği için çocuklar için de mekaniği kolay kavrayabilmeleri için uygun bir kittir. Aynı zamanda LEGO yapıları ile uyumlu olduğu için robotunuzun fiziksel görünüşünü istediğiniz gibi eklemeler yapabilirsiniz.

Sensörler ve motorlar gibi elektronik komponentlerin de bulunması sebebi ile böylece yazılım ve mekaniğin yanında elektronik bağlantılar konusunda da bilgi edinme şansına sahip olma imkanı sağlıyor. mBot hakkında daha detaylı bilgiye buradan ulaşabilirsiniz.

U-Bot

U-Bot çocuklar için okul eğitimleri öncesinde kendilerini problem çözme, analitik düşünme gibi yeteneklerini keşfedebilmeleri ve geliştirebilmeleri için tasarlanmış bir robottur. mBot’tan farklı olarak programlama için bir bilgisayar kullanılmamaktadır. Bilgisayar olmadan kodlama yaparak bir robot ile bundan geri bildirim elde etmek üzerine bir çalışma mantığı vardır. Set içeriğinde destekleyici metin ve görseller bulunmaktadır. U-Bot eklenti paketleri ile daha kapsamlı ve çeşitli uygulamalar yapılabilir.

BBC Micro:Bit

Micro:Bit geliştirme kartı İngiltere’de BBC tarafından geliştirilmiştir. Arduino, Raspberry Pi gibi bir geliştirme kartıdır. Çocuklar ve programlamaya yeni başlayanlar için tasarlanmıştır. Basit programlama arayüzü ve elektronik bağlantılar için gayet kolay kullanımlı bir donanıma sahip olması ile sıkça tercih edilmektedir.

micro:Maqueen

micro:Maqueen, BBC’nin geliştirdiği ve micro:Bit ile uyumlu bir robot kitidir. Grafiksel programlama dilleri ile kodlanabilen, STEM eğitim modeli için özellikle tasarlanmış bir uygulama aracıdır. Scratch ile programlamak mümkündür. micro:Bit ile uyumlu olması dolayısı ile Arduino ile de uyumludur ve ayrıca Python ve diğer programlama platformları ile programlanabilmektedir. micro:Maqueen içeriğinde kızılötesi çizgi ve ultrasonik mesafe sensörlerinin yanısıra RGB LED’ler ve kumanda bulunmaktadır.

Bu yazımızda sizlere algoritmanın ne olduğundan ve nasıl algoritma oluşturduğumuzdan bahsettim. Bir sonraki yazımızda görüşmek üzere, takipte kalın 🙂

Algoritma mantığını eğlenerek öğrenmek isterseniz, elektronik ve robotik eğitim setlerimizi hemen incelemenizi tavsiye ederiz:

Son Çıkan Yazılar

67 YORUMLAR

  1. Bir ünitenin konusunu, konu başlıklarını ,içeriklerini belirli bir sistematiğe göre tablolaştırmak mı acaba?’ bu kadarını anlayabildim sadece.

  2. Beşir , bu en kolay konu.aslında bende bilişimden zorlanıyorum ee tabii çok gerekli sayılacak bir ders bu yüzden önemli gibieee…Bu kadarr…

  3. İçecek hazırlayan Kahve, çay otomatlarını bilirsiniz. Bardağa kahveyi ve kaynar suyu ekler, biraz şeker ve sütten sonra Çın!sinyalini verir, işte size bir bardak kahve. Bu bir algoritmadır.

  4. Alogritma sirali giden 1 2 3 4 5 6 gibi syailar bir alogritma dir 123454 bir alogritma dildir alogritma hem nesen yoneli hemde matamatiksel de denilebilir

  5. sayin yazar goruldugu gibi anlattiginiz konu ve verilen ornekler konuyu dahada anlasilmaz hale getirdi.
    bilinmesi gereken algoritma neden zorluyorsunuzki?
    biraz bilenler icin cok guzel basic anlatim.

  6. İnsan hareketleri de bir algoritmik olaydır.
    Musluktan bir bardak su almak için
    Musluğa git…yaklaş..mesafe yeterli mi?
    Hayır..yaklaşmaya devam et..mesafe yeterli mi?
    Evet…dur. sağ elinle musluğu çevir, su yeterli akana kadar
    Çok akıyorsa geri çevir
    Bardağı musluğa uzat..mesafeyi kontrol et..
    Bundan sonrasını kendiniz düşünebilirsiniz…

  7. Algoritma İngilizce’den geldiği için havalı duruyor, ama bu bildiğin yöntem demek.

    Algoritma = Yöntem

    yöntem
    1. bir şey yaparken tutulan, bir amaca erişmek için izlenen düzenli yol.
    2. bilimde, belli bir sonuca erişmek için, bir plana göre izlenen dizgesel yol.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz