![]() |
Algoritma Nedir ? Algoritma Neye Denir? Algoritma Ne Demektir? Algoritma Örnekleri |
![]() |
![]() |
#1 |
Prof. Dr. Sinsi
|
![]() Algoritma Nedir ? Algoritma Neye Denir? Algoritma Ne Demektir? Algoritma ÖrnekleriAlgoritma Nedir ? Algoritma Neye Denir? Algoritma Ne Demektir? Algoritma Örnekleri Algoritma Nedir ? Algoritma Neye Denir? Algoritma Ne Demektir? Algoritma Örnekleri Algoritma (Algorithm) PROGRAM YAZMAK SÜRECİ 1 ![]() 2 ![]() 3 ![]() 4 ![]() 5 ![]() 6 ![]() 7 ![]() 8 ![]() ![]() ALGORİTMA NEDİR? (Adım adım işlem basamaklarının yazılmasıdır ![]() Programlamaya Giriş Program : Belirli bir problemi çözmek için bir bilgisayar dili kullanılarak yazılmış deyimler dizisi ![]() Önceki bölümde bir problemin çözümü ile ilgili teknikler sunmuştuk ![]() i) Problemin ne olduğunu kavra ![]() ![]() ii) Problemin girdilerini, çıktılarını ve diğer kısıtlama ve gereksinimleri belirle ( bilgilerin giriş ve çıkış biçimlerinin nasıl olacağına kadar) ![]() iii) Problemin çözümünü veren algoritmayı yaz ![]() iv) Algoritmayı bir programla dili ile yaz ![]() v) Programın doğru çalışıp çalışmadığını test et ![]() ![]() Problem Çözme ve Algoritmalar 1 ![]() Problem çözmede, soruna hemen girişmek yerine, dikkatli ve sistematik yaklaşım ilke olmalıdır ![]() ![]() Descartes tarafından "Discourse on Method" isimli kitabında anlatılan problem çözme teknikleri;[2] 1 ![]() ![]() 2 ![]() ![]() 3 ![]() ![]() 4 ![]() ![]() 1 ![]() Belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir ![]() İ ![]() ![]() ![]() (Alharezmi adını araplar takmıştır) problemlerin çözümü için genel kurallar oluşturdu ![]() ![]() Her algoritma aşağıdaki kriterleri sağlamalıdır ![]() 1 ![]() ![]() 2 ![]() ![]() 3 ![]() ![]() 4 ![]() ![]() 5 ![]() ![]() Not: Bir program için 4 ![]() ![]() ![]() Örnek: İki sayının toplamını yazan algoritmayı yazınız ![]() Çözüm: Adım 1 --> İlk sayıyı oku, Sembolik olarak A1 S1=? Adım 2 --> İkinci sayıyı oku A2 S2=? Adım 3 --> Sayıları topla A3 T S1+S2 Adım 4 --> Sonucu görüntüle ![]() ![]() 1 ![]() ![]() Çözüm A0 --> Başla A1 --> Sayaç=0 (Sayaç'ın ilk sayısı 0 olarak başlar ![]() A2 --> Sayı=? : TßT+Sayı (Sayıyı giriniz ![]() ![]() A3 --> Sayaç=Sayaç+1 (Sayaç'a bir ekle ve sayacı göster ![]() A4 --> Sayaç<4 ise A2'ye git ![]() ![]() A5 --> O=T/4 (Ortalama için T değerini 4'e böl) A6 --> O'yu göster ![]() ![]() A7 --> Dur 2 ![]() ![]() Çözüm A0 --> Başla A1 --> S=20 : T=0 (Sayı 20 T değeri 0 ile başla) A2 --> TßT+S (T'ye sayıyı ekle T'yi göster ![]() A3 --> S=S+1 (Sayıyı bir artır ![]() A4 --> S<50 ise A2'ye git ![]() A5 --> T'yi göster ![]() ![]() A6 --> Dur Akış Şeması à 3 ![]() ![]() Çözüm: A0 --> Başla A1 --> S=0 : T=0 (Sayı 0, Toplam değeri 0 olsun) A2 --> S=S+1 (Sayıyı bir artır, sayıyı göster ![]() A3 --> T=T+2S+28 (28 sayısına çift sayı olması için sayıyı 2 ile çarp ve toplama ekle, toplamı göster) A4 --> 2S+28<90 ise git A2 (Eğer Çift sayı 90 değerinden küçük ise Adım 2'ye git) A5 --> O=T/S (Toplam değeri sayıya böl ve ortalamayı bul) A6 --> O'yu yaz ![]() A7 --> Dur 4 ![]() ![]() Çözüm: A0 --> Başla A1 --> S=0 : T=0 : Ç=0 (Sayı, tek ve çift sayılar 0 değerini alsın) A2 --> Sayı? (Sayıyı giriniz) A3 --> (-1)sayı=1 ise Ç=Ç+Sayı (Eğer -1'in sayı üssü 1 sayısına eşitse sayıyı çift sayıya ekle ve çift sayıyı bul ![]() A4 --> (-1)sayı=+1 ise T=T+Sayı (Eğer -1'in sayı üssü +1 sayısına eşitse sayıyı tek sayıya ekle ve tek sayıyı bul ![]() A5 --> S=S+1 (Sayaça 1 ekle ve sayacı göster) A6 --> S<10 ise A2'ye git ![]() ![]() A7 --> V ß Ç/T (Çift sayıların toplamını tek sayıların toplamına böl ![]() A8 --> V'yi göster ![]() ![]() A9 --> Dur 5 ![]() ![]() Çözüm : A0 --> Başla A1 --> S1=? : S2=? (İlk sayıyı gir ; ;İkinci sayıyı gir ![]() A2 --> S1>S2 ise git A4 (Sayı 1 sayı 2'den küçükse Adım 4'e git ![]() A3 --> S2>S1 ise git A5 (Sayı 2 sayı 1'den küçükse Adım 5'e git ![]() A4 --> S1'i göster git A6 (sayı 1 değerini göster ve işlemi durdur) A5 --> S2'yi göster ![]() A6 --> Dur 6 ![]() ![]() Çözüm : A0 --> Başla : EB=-¥ : S=0 (Başla olabilecek EB:en küçük sayı olsun, Sayı 0 olsun) A1 --> Sayı? (Sayıyı giriniz ![]() A2 --> Sayı>EB ise EB=Sayı (Eğer Sayı EB'den küçükse EB sayıyla aynı değeri alsın ![]() A3 --> S=S+1 (Sayaca 1 ekle ve sayacı göster) A4 --> S<3 ise git A1 (Eğer sayac 3'ten küçükse adım 1'e git ![]() A5 --> EB'yi göster (En büyük sayıyı göster ![]() A6 --> Dur Örnek 1 ![]() ![]() ![]() 1 ![]() ![]() 2 ![]() ![]() 3 ![]() ![]() 4 ![]() ![]() 5 ![]() ![]() ![]() 6 ![]() ![]() Algoritmaların yazım dili değişik olabilir ![]() ![]() ![]() ![]() ![]() Aynı algoritmayı aşağıdaki gibi yazabiliriz ![]() 1 ![]() 2 ![]() ![]() 3 ![]() ![]() 4 ![]() ![]() ![]() 5 ![]() ![]() Algoritmayı bir de akış şeması ile gerçekleyelim ![]() T=0 İ=0 İ'nin Değrini T'ye ekle İ'yi bir arttır İ<101 T'yi yaz Örnek 1 ![]() ![]() ![]() Girdi : a, b ve c katsayıları Çıktı : denklemin kökleri 1 ![]() ![]() 2 ![]() ![]() 3 ![]() ![]() ![]() ![]() 4 ![]() 5 ![]() 6 ![]() ![]() 7 ![]() ![]() Döngü Gösterimi Tekrarlanan adımlar n ![]() n ![]() ![]() ![]() ![]() n ![]() ![]() ![]() ![]() n ![]() ![]() ![]() ![]() Örnek 1 ![]() ![]() ![]() Girdi : iki tamsayı Çıktı : sayıların çarpımı 1 ![]() 2 ![]() 3 ![]() ![]() ![]() ![]() 3 ![]() ![]() 4 ![]() Örnek 1 ![]() ![]() ![]() Girdi : Bir tamsayı Çıktı : sayının faktoriyel İlgili formul: Faktoriyel(n)=1*2* ![]() ![]() ![]() 1 ![]() 2 ![]() 3 ![]() ![]() ![]() ![]() 3 ![]() ![]() 4 ![]() Örnek 1 ![]() ![]() ![]() ![]() 1 ![]() 2 ![]() 3 ![]() 3 ![]() 3 ![]() 4 ![]() Örnek 1 ![]() ![]() 1 ![]() 2 ![]() 2 ![]() 2 ![]() 2 ![]() 3 ![]() 4 ![]() 5 ![]() Örnek 1 ![]() ![]() 1 ![]() 2 ![]() 3 ![]() ![]() 1 ![]() 2 ![]() 3 ![]() 4 ![]() ![]() 5 ![]() 6 ![]() 1 ![]() 2 ![]() 3 ![]() ![]() 4 ![]() ![]() 5 ![]() 6 ![]() Koşul Gösterimi n ![]() n ![]() ![]() n ![]() ![]() n ![]() ![]() aksi halde n ![]() ![]() n ![]() ![]() n ![]() ![]() Kök bulma örneğinde 3 ![]() 3 ![]() 3 ![]() ![]() 3 ![]() ![]() aksi halde 3 ![]() ![]() Sorular: * Girilen üç sayıdan en büyüğünü bulan algoritmayı yazınız ![]() * Tamsayılarda üs alma işlemini gerçekleştiren algoritmayı yazınız ( ab ) ![]() * 1-100 arasında tutulan bir sayıyı tahmin eden algoritmayı yazınız ![]() Örnek 1 ![]() ![]() ![]() ![]() 0 - 2 saat 150 bin 2 - 8 saat 300 bin 8-24 saat 500 bin 1 ![]() ![]() 2 ![]() 2 ![]() ![]() ![]() Aksi halde 2 ![]() ![]() ![]() 2 ![]() ![]() ![]() ![]() ![]() Aksi halde 2 ![]() ![]() ![]() ![]() ![]() 3 ![]() 4 ![]() Örnek 1 ![]() ![]() ![]() 1 ![]() ![]() 2 ![]() 3 ![]() 4 ![]() ![]() 5 ![]() Algoritmanın yazımı daha simgesel olabilir ![]() ![]() ![]() 1 ![]() 2 ![]() 3 ![]() 4 ![]() 5 ![]() 6 ![]() ![]() 7 ![]() Örnek 1 ![]() ![]() ![]() 1 ![]() 2 ![]() 3 ![]() 4 ![]() 5 ![]() 6 ![]() ![]() 7 ![]() 8 ![]() 9 ![]() ![]() 10 ![]() ![]() ![]() ![]() 11 ![]() |
![]() |
![]() |
![]() |
Algoritma Nedir ? Algoritma Neye Denir? Algoritma Ne Demektir? Algoritma Örnekleri |
![]() |
![]() |
#2 |
Prof. Dr. Sinsi
|
![]() Algoritma Nedir ? Algoritma Neye Denir? Algoritma Ne Demektir? Algoritma ÖrnekleriAlgoritma bir problemin çözümünde izlenecek yol anlamına gelir ![]() ![]() ![]() ![]() ![]() 1 ![]() 2 ![]() 3 ![]() Bununla ilgili küçük bir örnek verelim: Örneğin klavyeden girilen iki sayının toplamını bulan ve sonucu ekrana yazdıran programın algoritması ve akış diyagramı istenseydi ![]() 1 ![]() birinci sayı: x ikinci sayı :y iki sayının toplamı:toplam 2 ![]() Adım 1 :Başla Adım 2:Birinci sayıyı oku ve x değişkenine aktar ![]() Adım 3:ikinci sayıyı oku ve y değişkenine aktar ![]() Adım 4:x ve y sayılarını topla sonucu toplam değişkenine aktar ![]() Adım 5:Toplam değerini ekrana yazdır ![]() Adım 6:Dur 3 ![]() ![]() algo1 Yukarıdaki örnekte basit bir problemin nasıl çözüleceği anlatılmıştır: Burada değişkenler dışarıdan girilen ve bizim oluşturduğumuz değerleri tutan elemanlardır ![]() Algoritma ise problemin çözümünün adımlar halinde oluşturulmasıdır ![]() Akış Diyagramı (Flowing Diagram) ise çözümün şekiller ile tasviridir ![]() |
![]() |
![]() |
|