ALGORİTMA NEDİR? Algoritma,herhangi bir sorunun çözümü için izlenecek yol anlamına gelmektedir[2]. Diğer bir deyişle algoritma verilerin bilgisayara hangi çevre biriminden girileceğinin, problemin nasıl çözüleceğinin, hangi basamaklardan geçirilerek sonuç alınacağının, sonucun nasıl ve nereye yazılacağının sözel olarak ifade edilmesi biçiminde tanımlanabilir[2]. Algoritma; belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir[3].
ÖRNEK ALGORİTMA Sabah yataktan kalk Elini yüzünü yıka Kahvaltı yap Bulaşıkları yıka Elbiselerini giy Kapıyı aç ve dışarı çık Arabayı çalıştır İşyerine doğru sür Otopark’a park et İşyerine gir.
ÖRNEK ALGORİTMA 1-10 arasındaki tamsayıların toplamını bulan programın algoritma ve akış şemasını yazalım[3]. 1. Basla 2. Sayac=0, Toplam=0 3. Sayac=Sayac+1 4. EĞER Sayac>10 İSE Git 7 (yazdırma basamağına) 5. Toplam=Toplam+Sayac 6. Git 3 7. Yaz ?1-10 Arası Sayıların Toplamı=?,Toplam 8. Bitir
TEMEL KAVRAMLAR Algoritma hazırlanırken, çözüm için yapılması gerekli işlemler, öncelik sıraları göz önünde bulundurularak ayrıntılı bir biçimde tanımlanmalıdırlar[1]. Bilgisayar bilimlerinde kullanılan kavram ve kelimeler gündelik hayatta kullandığımızdan daha farklı anlamlar taşırlar. Bu kavramlardan en önemlileri;
TEMEL KAVRAMLAR Sunum Program Yürütüm [1]. SUNUM YÜRÜTÜM ALGORİTMA
SUNUM Algoritmanın ifade biçimidir. Algoritma ve sunum arasındaki ilişki hikaye ile kitap arasındaki ilişkiye benzetilebilir. Hikaye soyut ve kavramsaldır. Kitap ise hikayenin elle tutulur gözle görülür bir sunumudur. Kitap çeşitli dillerle yazılabilir, ya da değişik formatlarda basılabilir. Ama sunduğu hikayenin içeriğini değiştirmez. Aynı algoritma birçok değişik şekilde ifade edilebilir[1].
ÖRNEK ax+b=0 denkleminin kökü geleneksel olarak; x=-b/a denklemi ile hesaplanır. Ama bu işlem söyle bir komutla da sunulabilir. “sabit terimin işaretini değiştir ve x’in katsayısına böl.” Aynı işlem bir elektrik devresi ile de gerçekleştirilebilir. Bütün bu sunumlar farklı olmasına rağmen gerçekleştirdikleri algoritma aynıdır[1].
PROGRAM Bir algoritmanın bilgisayar için geliştirilmiş biçimsel sunum şeklidir. Bu amaç için çeşitli programlama dilleri kullanılır[1].
YÜRÜTÜM Bir programın yürütümü demek o program tarafından sunulan algoritmayı gerçeklemek demektir. Şekilde algoritma, sunum, program ve yürütüm arasındaki ilişki görülmektedir[1]. SUNUM YÜRÜTÜM ALGORİTMA PROGRAM
ALGORİTMA Algoritma,sonlu bir işi tanımlamak için Açık-seçik Yürütülebilen Sıralı adımlar setidir[1]. Algoritmanın sonlu bir işi tamamlaması gerekir. Ancak sonlu bir iş bilgisayar tarafından sonlu bir sürede yerine getirilebilir. Aksi takdirde bilgisayar anlamsız bir takım döngüler içinde sonuç vermeyecek bir yığın hesap yapar[1].
AÇIK-SEÇİKLİK Algoritmanın gerçeklenebilmesi için, adımlar içinde taşınan bilginin bilgisayar tarafından tam olarak anlaşılabilmesi gerekir. Örnek: “Ne var, ne yok”
YÜRÜTÜLEBİLİRLİK Algoritmanın program tarafından yürütülebilir olması gereklidir.Yani algoritma, sonlu bir işi tanımlamalı, sonsuz bir döngüye girmemelidir.[1]. Örnek: 1.Tüm doğal sayıların listesini yap 2.Bu sayıları en küçükten en büyüğe doğru diz 3.En küçüğünü listeden çıkar.
SIRALILIK İşlem basamakları doğru sıralanmalıdır. Örnek: ax+b=0 örneğinde x’i bulmak için Yanlış Algoritma Doğru Algoritma 1-a’nın değerini gir 1-a’nın değerini gir 2-b’yi a’ya böl 2-b’nin değerini gir 3-sonucu x’e ata 3-b’yi a’ya böl 4-b’nin değerini gir 4-sonucu x’e ata 5-x’i yazdır 5-x’i yazdır
ALGORİTMANIN SUNUMU Algoritmaların sunumu için gerekli iki önemli kavram vardır. Bu kavramlardan ilki, karmaşık işleri basitleştirerek ifade etmemize yarayan ilkeller. İkincisi ise algoritmaları yarı biçimsel bir dille anlatmamıza yardım edecek sözde kodlardır[1].
İLKELLER Bilgisayar bilimleri algoritmanın anlatımındaki sorunlara bazı yapı taşları tanımlayarak çözüm getirir. Algoritmalar basit yapı taşları ile oluşturulur. Bu yapı taşlarına ilkeller denir. Örneğin, toplama ve bölme işlemlerini kullanarak verilen bir dizindeki sayıların aritmetik ortalamasını hesaplayan bir ilkel yaratılabilir. Başka bir ilkel, verilen bir dizindeki en büyük ya da en küçük sayıyı hesaplamak için oluşturulabilir[1].
ÖRNEK
ÖRNEK
ÖRNEK Düz Örgü Ters Örgü
İLKELLER Her ilkelin iki ana parçası vardır. Sözdizimi, Anlam Sözdizimi, ilkelin sembolik sunumu Anlam ise o ilkelin sunduğu kavramları gösterir[1].
ÖRNEK Su için sözdizim H2O dan oluşan karakterlerdir. Fakat anlamı için çok uzun tasfirler gerekebilir[1].
KAYNAKLAR 1. VURAL, Fatoş Tonay Yarman, “Bilgisayar Sistemleri”, Akademi yayıncılık, Ankara, 2000 2. Algoritma ve Akış Diyagramları, http://www.godoro.com/Divisions/Ehil/Mecmua/Magazines/Articles/txt/html/article_FlowChart.html 31,3,2007 3. Yazılım Grubu, http://www.yazilimgrubu.com/dokuman.php?sayfa2=4&no=18 31,3,2007 Resimler 4. http://www.teknohaber.net/resimler/gazete1.jpg 5. http://pascal.eng.uci.edu/pic/pascal1.jpg 6. http://home.att.net/~stephen821/programming/cbig.gif
Dinlediğiniz İçin Teşekkürler SON