25 Şubat 2020 Salı

Algoritma Nedir ? Akış Şeması Nedir? (Detaylı Anlatım)

Merhabalar sevgili arkadaşlar. Sizlere bu yazımda algoritma nedir , akış şeması nedir ve akış şemasında kullanılan semboller nelerdir bunlar ile ile ilgili elimden geldiğince detaylı bilgiler vereceğim. Eğer hazırsanız başlayalım.

algoritma nedir, akış şeması nedir
Algoritma Nedir, Akış Şeması Nedir


Algoritma Nedir?

Algoritma, bir problemi çözmek için kullanıma yol ya da yöntemlere verilen isimdir. Algoritma kelimesi ilk defa Müslüman bilim adamı el Harezmi tarafından kullanılmıştır. 

Algoritmalar hazırlanırken mutlaka başla komutu ile başlanır ve bitir komutu ile sonlanır. Başla ve bitir olmayan komutlar teoride yok sayılır. Algoritmada problemi çözerken; çözüm adımları açık ve net bir şekilde belirtilmesi gerekir.

Peki algoritma ile bizim nasıl bir işimiz var algoritma ne işimize yarayacak? Hemen bakalım...

Algoritma Ne İşe Yarar?

Algoritma ne işe yarar diye özellikle ders anlatımı sırasında öğrencilerim tarafından çok sorular soruluyor. 5,6,7,8,9 ve 10.sınıf konuları içerisinde de mutlaka algoritma konusu geçiyor.

Algoritmalar gerek matematikte gerekse bilgisayar bilimi içerisinde çok sık kullanılan terimlerin başında gelmektedir. Bazen öğrencilerimiz; "Hocam dersimiz bilgisayar matematikle ne işimiz var" gibi sorular sorabiliyorlar. Şöyle bir örnek vermek gerekirse; 2 sayının ortalamasını bulalım dediğimiz zaman, ilk olarak iki sayıyı toplamamız daha sonra ise iki sayının toplamını ikiye bölmemiz gerekir. Böylece iki sayının ortalamasını da bulmuş oluruz. Burada matematik var :) Tabi algoritma kelimesi içerisindeki matematik bu kadar basit mi elbette hayır :) Yazının ilerleyen bölümlerinde daha iyi anlayacağınız düşünerek yazıma devam ediyorum.

Algoritma ne işe yarar hala kafanızda net bir şey oluşmadı değil  mi? Farkındayım ve hemen somut örnekler vererek aklınıza takılan soru işaretlerini gidermek istiyorum.

Severek oynadığımız bilgisayar oyunları, severek girdiğimiz sosyal medya platformları olsun bunların hepsinde bir algoritma vardır. Ve kullanılan programlar bir algoritma çerçevesi içerisinde çalışırlar. Eeee hocam güzel de programlama (kodlama) ile algoritmanın nasıl bir ilişkisi var diye hemen aklınıza soru geldiyse devam edelim :)

Algoritma ve Kodlama İlişkisi

Bu kısımda bazen sorunlar yaşayabiliyorum. Özellikle algoritma konu anlatımı yaparken öğrencilerim bazen kodlama ile bağlantısını kuramıyorlar ama daha sonra kod yazmaya başladığımız zaman algoritma ve kodlama bağlantısını kolay bir şekilde kurabiliyorlar.

Şu an için bilgisayarda aklınıza gelen tüm yazılımlar belirli bir algoritmaya göre hazırlanıp, ondan sonra kodlanmaktadırlar. Yani ilk olarak mutlaka algoritma yazılır ve daha sonra kod yazmaya geçilir. Algoritma olmadan maalesef kodlama yapmak neredeyse imkansızdır.

Algoritmada aslında temel mantık hiç bir iş şansa bırakılmadan hareket edilmeli ve tüm ihtimaller denenmelidir. Diyelim ki bir oyun yapmaya karar verdiniz. Bu oyunun algoritması içerisinde kullanıcının yani oyunu oynayan kişilerin hangi tuşlara basınca ne olacağını net olarak belirtmeniz gerekiyor eğer siz net olmazsanız algoritmanız hatalı olur, algoritma hatalı olursa yazmış olduğumuz kodlarda sorun olur kodlarda da sorun olursa zaten yazdığımız hazırladığımız oyun da hatalar ile karşılaşırız.

Evet arkadaşlar algoritma nedir ne demek ne için kullanılır gibi aklınıza takılan soruları cevapladık diye düşünüyorum yine de aklınıza takılan şeyler olursa sorabilirsiniz. Şimdi gelelim akış şeması ya da diğer ismi ile akış diyagramlarına...

Akış Şeması Nedir?

Akış şeması, algoritması hazırlanan bir programın(problemin) çeşitli şekillerle birbirine bağlanarak ortaya çıkan, neden sonuç ilişkisini gösteren şema tipidir.

Akış şeması da aynı algoritma gibi adımlarla ifade edilir ve başla komutu ile başlanır ve bitir komutu ile sonlandırılır. Akış şeması çizerken dikkat edilmesi gereken en önemli nokta mutlaka algoritmanıza göre akış şeması çizmenizdir. Akış şemasının diğer isminin de akış diyagramı olduğunu da tekrar tekrar eklemek istiyorum.

Kısaca akış şemaları bizim yazmış olduğumuz algoritmaların şekillerle daha anlaşılır bir şekilde gösterilmesi denebilir. Peki hocam güzel diyorsun da bu şekiller ne derseniz hemen akış şemalarında kullanılan şekillere bakalım :)

Akış Şemalarında Kullanılan Şekiller (Semboller)

Akış şemalarında kullanılan şekiller çok önemlidir. Eğer şekilleri yanlış çizersek akış şemamız yanlış kabul edilecektir. Peki akış şemalarında hangi şekiller kullanılır ?

  1. Elips
  2. Dikdörtgen
  3. Paralel Kenar
  4. Eşkenar Dörtgen(Baklava Dilimi)
  5. Altıgen
  6. Dalgalı Dörtgen
  7. Çember
Yukarıda verilen akış şeması şekillerinin görevleri nelerdir kısaca hemen bunlardan bahsedelim arkadaşlar.

1) Elips

Elips şeklimiz başla ve bitir komutlarında kullanılmaktadır ve çok önemli bir akış şeması şeklidir.

2) Dikdörtgen

Matematiksel işlemler ve değişken atama işlemlerinde kullanılan şekildir. Ayrıca verilen komutlarda da dikdörtgen kullanılır( kapıyı aç, ekmek al, ayranı bardağa doldur vs..)

3) Paralel Kenar

Veri girişi(bilgi girişi) yapmak için kullanılan şekildir. Eeee hocam bilgi girişi ne demek? Bilgi girişi demek kullanıcıdan bilgi istemek demek bir cevap almak demek. Örneğin; bir sayı giriniz, adın ne, en iyi bilişim sitesi ne, en iyi bilgisayar yazılı soruları hangi sitede gibi karşı taraftan cevap alacağımız yani bilgi girişi yaptıracağımız cümlelerde paralel kenar kullanılır.

Python programlama dilinde input komutuna karşılık gelmektedir.

4) Eşkenar Dörtgen

Karar verme ve denetim amaçlı kullanılan şekildir. Baklava dilimi diye de bilinir :) Özellikle evet hayır şeklinde sorulan sorularda tercih edilen şekildir. Örneğin; hava yağmurlu mu (Evet,Hayır), öğretmen geldi mi (Evet,Hayır), Ortalamam 50 den büyük mü (Evet,Hayır) gibi. Kısaca kullanılan if kodunda kullanılan şekildir diyebiliriz.

5) Altıgen

Eğer algoritmamız da bir döngü varsa (while döngüsü, for döngüsü gibi) altıgen şekliyle bunu gösterebiliriz.

6) Dalgalı Dörtgen

Ekrana yazdır yani ekranda sonucu göster komutu için kullanılan şekildir. Python programlama dilinde print komutuna karşılık gelir. Eğer biz ekranda yaptığımız işlemlerin sonucunu göstermek istersek bu şekli mutlaka kullanmak zorundayız.

7) Çember (Daire)

Çizilen şeklimiz yuvarlak ise (çember yada daire farketmez) burada bir bağlaç vardır. KOd yapısı olarak or ya da and şeklinde düşünebilirsiniz. Örneğin sınavdan 50 veya 60 alırsam geçerim burada veya bir bağlaçtır ve yuvarlak şeklimizi kullanmamız gerekmektedir.

akış şeması sembolleri
Akış Şeması Sembolleri-Şekilleri

Akış şeması şekilleri nelerdir sorusunun cevabını detaylı olarak verdiğimi düşünüyorum. Akış şemaları ile ilgili bir ekleme daha yapalım  arkadaşlar. Akış şemalarını çizmek için online web sitelerini kullanabilirsiniz. Örneğin; draw.io web sitesi üzerinden akış şemalarını kolay bir şekilde hazırlayabilirsiniz.

Özellikle 5,6,7,8,9 ve 10.sınıf bilişim teknolojileri ve bilgisayar bilimi derslerinde algoritma ve akış şemaları konuları işleniyor. Ortaokul öğrencilerine algoritma mantığını öğretmek için compute it sitesi tercih edilebilecek güzel bir sitelerde arkadaşlar. Yine ortaokul ve lise öğrencilerine algoritma mantığını öğretmek adına Kodla Büyü sitesi içerisinde yer alan 250 farklı sahnenin olduğu kodlama etkinlikleri de tercih edilebilir diye düşünüyorum.

Lise seviyesi içinse bilgisayarbilimleri.com/2018/07/algoritma-ve-akis-semasi-ornekleri-sunumlar adresinde yer alan örnekler uygun olacaktır diye düşünüyorum.


Örnek Algoritmalar

Örnek Algoritma-1

Örnek Algoritma-2

Örnek algoritmalardan sonra arkadaşlar akış şemaları için şekillerin nasıl kullanacağı konusunda sizleri bilgilendiren bir resmi yukarıda paylaşmıştım. Şimdi biraz daha detaylara inerek devam edelim.






Akış şemaları içerisinde en çok kullanılan şekiller yukarıda verilen şekillerdir. Özellikle paralel kenar ve dikdörtgeni çok fazla karıştırıyorsunuz bundan dolayı bu kısma dikkat edin. Paralel kenar giriş ve çıkış birimleri için dikdörtgen ise hesaplama ve değişken atamaları için kullanılıyor. Bu iki şekli karıştırmamanız çok önemli.

9.sınıf bilgisayar bilimi 1.dönem 2.yazılı sınavında algoritma ve akış şemaları ile ilgili karşınıza çok fazla soru çıkacaktır. Yukarıda algoritma ile ilgili 2 adet örnek paylaştık. Şimdi de hem algoritma hem de akış şemaları ile ilgili örnekleri paylaşalım.

Algoritma ve Akış Şeması Örnek 1: Girilen 3 Sayının Ortalamasını Bulmak




Algoritma ve Akış Şeması Örnek 2: Satış Fiyatı ve Adedi Verilen Ürünlerin Toplam Fiyatını Bulmak



Algoritma ve Akış Şeması Örnek 2: Girilen Sayının Negatif Mi Pozitif Mi Olduğunu Bulmak




Yukarıda yer alan örnekler içerisinde algoritma ve akış şemaları ile ilgili örnekleri paylaştık. Algoritma ve akış şemaları konusunda sizlere bahsedeceklerim bu kadar umarım sizlere faydalı olmuştur. 

Bu yazımızda algoritma nedir, akış şeması nedir öğrendik. Algoritmalar ve akış şemaları özellikle 1.dönem konuları içerisinde çok fazla işlenen konulardan birisidir. Lütfen dikkat edin diyerek yazımı sonlandırıyorum. Ayrıca instagram.com/bilisimciruhcom adresinden beni takip edebilirsiniz.

Hiç yorum yok: