• Tidak ada hasil yang ditemukan

Algoritma dersi sunusu

N/A
N/A
Protected

Academic year: 2021

Membagikan "Algoritma dersi sunusu"

Copied!
14
0
0

Teks penuh

(1)

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları

Algoritmanın Hazırlanması

Algoritmanın Hazırlanması

Algoritma,herhangi bir sorunun çözümü için izlenecek yol anlamına Algoritma,herhangi bir sorunun çözümü için izlenecek yol anlamına gelmektedir.Çözüm için yapılması gereken işlemler hiçbir alternatif yoruma gelmektedir.Çözüm için yapılması gereken işlemler hiçbir alternatif yoruma izin vermeksizin sözel olarak ifade edilir. Diğer bir deyişle algoritma, izin vermeksizin sözel olarak ifade edilir. Diğer bir deyişle algoritma, verilerin, bilgisayara hangi çevre biriminden girileceğinin, problemin nasıl verilerin, bilgisayara hangi çevre biriminden girileceğinin, problemin nasıl çözüleceğinin, hangi basamaklardan geçirilerek sonuç alınacağının, çö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 sonucun nasıl ve nereye yazılacağının sözel olarak ifade edilmesi biçiminde tanımlanabilir.

biçiminde tanımlanabilir.

Algoritma hazırlanırken, çözüm için yapılması gerekli işlemler, öncelik 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. sıraları gözönünde bulundurularak ayrıntılı bir biçimde tanımlanmalıdırlar. Aşağıda algoritma hazırlanmasına ilişkin örnekler yer almaktadır.

(2)

Örnek 1: Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi Örnek 1: Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır. yazılır.

Algoritma

Algoritma

Adım 1 – Başla

Adım 1 – Başla

Adım 2 – Birinci Sayıyı Oku

Adım 2 – Birinci Sayıyı Oku

Adım 3 – İkinci Sayıyı Oku

Adım 3 – İkinci Sayıyı Oku

Adım 4 – İki Sayıyı Topla

Adım 4 – İki Sayıyı Topla

Adım 5 – Dur 

Adım 5 – Dur 

Algoritmaya dikkat edilirse işlemlerin sıralanmasında, işlem önceliklerinin göz Algoritmaya dikkat edilirse işlemlerin sıralanmasında, işlem önceliklerinin göz önünde bulundurulduğu görülür. Ayrıca algoritma yazımı sorun çözümünün önünde bulundurulduğu görülür. Ayrıca algoritma yazımı sorun çözümünün başladığını gösteren “Başla” ifadesi ile başlamakta ve işlemlerin bitti

başladığını gösteren “Başla” ifadesi ile başlamakta ve işlemlerin bittiğiniğini belirten “Dur” ifadesi ile

(3)

Akış Diyagramları

Akış Diyagramları (Şemaları)

(Şemaları)

Herhangi bir sorunun çözümü için izlenmesi gerekli olan aritmetik ve mantıksal Herhangi bir sorunun çözümü için izlenmesi gerekli olan aritmetik ve mantıksal adımların söz veya yazı ile anlatıldığı algoritmanın, görsel olarak simge ya da adımların söz veya yazı ile anlatıldığı algoritmanın, görsel olarak simge ya da sembollerle ifade edilmiş şekline “akış şemaları” veya FLOWCHART adı verilir. sembollerle ifade edilmiş şekline “akış şemaları” veya FLOWCHART adı verilir. Akış şemalarının algoritmadan farkı, adımların simgeler şeklinde kutular içine Akış şemalarının algoritmadan farkı, adımların simgeler şeklinde kutular içine yazılmış olması ve adımlar arasındaki ilişkilerin ve yönünün oklar ile yazılmış olması ve adımlar arasındaki ilişkilerin ve yönünün oklar ile gösterilmesidir.

gösterilmesidir.

Programın saklanacak esas belgeleri olan akış şemalarının hazırlanmasına, Programın saklanacak esas belgeleri olan akış şemalarının hazırlanmasına, sorun çözümlenmesi sürecinin daha kolay anlaşılır biçime getirilmesi, iş sorun çözümlenmesi sürecinin daha kolay anlaşılır biçime getirilmesi, iş akışının kontrol edilmesi ve programın kodlanmasının kolaylaştırılması gibi akışının kontrol edilmesi ve programın kodlanmasının kolaylaştırılması gibi nedenlerle başvurulur. Uygulamada çoğunlukla, yazılacak programlar için önce nedenlerle başvurulur. Uygulamada çoğunlukla, yazılacak programlar için önce programın ana adımlarını (bölümlerini) gösteren genel bir bakış akış şeması programın ana adımlarını (bölümlerini) gösteren genel bir bakış akış şeması hazırlanır. Daha sonra her adım için ayrıntılı akış şemalarının çizimi vardır. hazırlanır. Daha sonra her adım için ayrıntılı akış şemalarının çizimi vardır. Akış şemalarının hazırlanmasında aşağıda yer alan simgeler kullanılır.

(4)

Algoritmanın başladığını Algoritmanın başladığını

ya da sona erdiğini ya da sona erdiğini belirtmek için kullanılır. belirtmek için kullanılır.

Klavye aracılığı ile Klavye aracılığı ile giriş ya da okuma giriş ya da okuma yapılacağını gösterir. yapılacağını gösterir.

Yazıcı aracılığı ile Yazıcı aracılığı ile çıkış yapılacağını gösterir. çıkış yapılacağını gösterir.

Kart okuyucu aracılığıyla Kart okuyucu aracılığıyla giriş yapılacağını gösterir. giriş yapılacağını gösterir.

Araç belirtemeden Araç belirtemeden giriş ya da çıkış giriş ya da çıkış yapılacağını gösterir. yapılacağını gösterir. Hesaplama ya da değerlerin Hesaplama ya da değerlerin değişkenlere aktarımını gösterir. değişkenlere aktarımını gösterir.

Aritmetik ve mantıksal Aritmetik ve mantıksal

ifadeler  ifadeler  için karar verme için karar verme ya da karşılaştırma ya da karşılaştırma durumunu gösterir. durumunu gösterir. Diskten okuma Diskten okuma veya diskete veya diskete yazmayı yazmayı gösterir. gösterir.

(5)

Disketten okuma Disketten okuma veya diskete veya diskete yazmayı yazmayı gösterir. gösterir. Teyp kütüğünü Teyp kütüğünü gösterir. gösterir.

Yapılacak işler birden fazla sayıda Yapılacak işler birden fazla sayıda

yinelecek İse, diğer bir deyişle yinelecek İse, diğer bir deyişle

iş akışında çevrim (döngü) iş akışında çevrim (döngü) var ise bu sembol kullanılır. var ise bu sembol kullanılır.

Oklar işin akış yönünü Oklar işin akış yönünü gösterir.

(6)

Akış şemaları içerik ve biçim

Akış şemaları içerik ve biçimlerine göre genel olarak üç

lerine göre genel olarak üç

grupta sınıflandırılabilirler.

grupta sınıflandırılabilirler.

> Doğrusal Akış Şemaları

> Doğrusal Akış Şemaları

> Mantıksal Akış Şemaları

> Mantıksal Akış Şemaları

> Döngüsel (iteratif, çevrimli, yineli) Akış Şemaları

> Döngüsel (iteratif, çevrimli, yineli) Akış Şemaları

(7)

Doğrusal Akış Şemaları

Doğrusal Akış Şemaları

İş akışları giriş, hesaplama, çıkış biçiminde olan akış şemaları bu grup

İş akışları giriş, hesaplama, çıkış biçiminde olan akış şemaları bu grup

kapsamına girer.

kapsamına girer.

Örnek 1: İki sayının çarpımının bulunmasıyla ilgili algoritma aşağıdaki

Örnek 1: İki sayının çarpımının bulunmasıyla ilgili algoritma aşağıdaki

gibidir.

gibidir.

Değişkenler:

Değişkenler:

A: Birinci sayıyı

A: Birinci sayıyı

B: İkinci sayıyı

B: İkinci sayıyı

C: İki sayının çarpımını (A*B) göstersin

C: İki sayının çarpımını (A*B) göstersin

Algoritma:

Algoritma:

Adım 1 – Başla

Adım 1 – Başla

Adım 2 – A’yı oku

Adım 2 – A’yı oku

Adım 3 – B’yi oku

Adım 3 – B’yi oku

Adım 4 – C=A*B’yi hesapla

Adım 4 – C=A*B’yi hesapla

Adım 5 – C’yi yaz

Adım 5 – C’yi yaz

Adım 6 - Dur 

(8)

Doğrusal Akış Şemaları

Doğrusal Akış Şemaları

•• Örnek 2: Klavyeden girilen İki sayının toplamını

Örnek 2: Klavyeden girilen İki sayının toplamını

hesaplayıp yazan algoritma ve akış şemasını

hesaplayıp yazan algoritma ve akış şemasını

hazırlayınız.

hazırlayınız.

(X: Birinci sayı, Y: İkinci sayı, Z: toplam)

(X: Birinci sayı, Y: İkinci sayı, Z: toplam)

A1 : Başla

A1 : Başla

A2 : Klavyeden oku X

A2 : Klavyeden oku X

A3 : Klavyeden oku Y

A3 : Klavyeden oku Y

A4 : Hesapla Z = X + Y

A4 : Hesapla Z = X + Y

A5 : Yaz Z

A5 : Yaz Z

A6 : Dur 

A6 : Dur 

(9)

Örnek 2 – Akış Şeması

Örnek 2 – Akış Şeması

BAŞLA BAŞLA DUR DUR OKU X OKU X OKU Y OKU Y Z=X+Y Z=X+Y YAZ Z YAZ Z

(10)

Mantıksal Akış Şemaları

Mantıksal Akış Şemaları

•• Geniş ölçüde mantıksal kararları içeren akış

Geniş ölçüde mantıksal kararları içeren akış

şemalarıdır. Hesap düzenleri genellikle basittir.

şemalarıdır. Hesap düzenleri genellikle basittir.

Örnek 3: Klavyeden girilen bir sayının pozitif, negatif veya sıfıra eşit

Örnek 3: Klavyeden girilen bir sayının pozitif, negatif veya sıfıra eşit

olma durumunu hesaplayıp yazdıran algoritma ve akış şemasını

olma durumunu hesaplayıp yazdıran algoritma ve akış şemasını

hazırlayınız.

hazırlayınız.

(S : Sayı)

(S : Sayı)

A1 : Başla

A1 : Başla

A2 : Oku S

A2 : Oku S

A3 : Eğer S > 0 ise “Pozitif” yaz,

A3 : Eğer S > 0 ise “Pozitif” yaz,

A4 : Eğer S < 0 ise “Negatif” yaz,

A4 : Eğer S < 0 ise “Negatif” yaz,

A5 : Eğer S = 0 ise “Sıfıra eşit” yaz,

A5 : Eğer S = 0 ise “Sıfıra eşit” yaz,

A6 : Dur 

(11)

Örnek 3 – Mantıksal Akış Şemaları

Örnek 3 – Mantıksal Akış Şemaları

BAŞLA BAŞLA DUR DUR OKU S OKU S S : 0 S : 0 YAZ YAZ “Sıfıra eşit” “Sıfıra eşit” YAZ YAZ “Pozitif” “Pozitif” YAZ YAZ “Negatif  “Negatif  ”” S < 0 S < 0 S > 0 S > 0 S = 0 S = 0

(12)

Döngüsel Akış Şemaları

Döngüsel Akış Şemaları

•• Sorunun çözümü için, çözümde yer alan

Sorunun çözümü için, çözümde yer alan

herhangi bir adım ya da aşamanın birden

herhangi bir adım ya da aşamanın birden

fazla kullanıldığı akış şemalarına denir. İş

fazla kullanıldığı akış şemalarına denir. İş

akışları genel olarak giriş ya da başlangıç

akışları genel olarak giriş ya da başlangıç

değeri verme, hesaplama, kontrol

değeri verme, hesaplama, kontrol

biçiminde olmaktadır.

(13)

Döngüsel Akış Şemaları

Döngüsel Akış Şemaları

•• Örnek 4: Klavyeden girilen bir yazıyı 5

Örnek 4: Klavyeden girilen bir yazıyı 5 kez yazdıran

kez yazdıran

algoritma ve akış şemasını oluşturunuz.

algoritma ve akış şemasını oluşturunuz.

( Y : Yazı, S : Sayaç )

( Y : Yazı, S : Sayaç )

A1 : Başla

A1 : Başla

A2 : Oku Y

A2 : Oku Y

A3 : Yaz Y

A3 : Yaz Y

A4 : S = S + 1

A4 : S = S + 1

A5 : Eğer S < 5 ise A3 e git

A5 : Eğer S < 5 ise A3 e git

A6 : Dur 

(14)

Örnek 4 – Döngüsel Akış Şemaları

Örnek 4 – Döngüsel Akış Şemaları

BAŞLA BAŞLA DUR DUR OKU Y OKU Y YAZ Y YAZ Y S = 0 , 5, S = 0 , 5, 1 1 S S Sayısı bilinen Sayısı bilinen döngülerde; döngülerde; başlangıç başlangıç değeri, son değeri, son değer, artış değer, artış sayısı sayısı Döngünün çalıştığı Döngünün çalıştığı bölüm bölüm

Referensi

Dokumen terkait

denizcilerinin Hint Okyanusu'nun hırçın ve sert dalgalarına yenik düşmelerinin en önemli nedeni, Akdeniz gibi nisbeten sakin ve kapalı bir deniz için yapılmış olan

HA’nın anlık durum bilgilerinin ölçümü için gerekli olan ve teknik özellikleri Tablo 9’da sunulan bütün algılayıcılar (Şekil 11), UKB’inin üzerine monte

Diaspora kavramı gündeme geldikten sonra ise AK Parti ile söz konusu tek taraflılık nispeten kırılmış fakat bu kez de eski hasletler olan ekonominin ve iç siyasetin

majikal sanatlarla ilgilendiği için bu notları almış olan birisidir. Şayet meraktan, sadece vakit geçirmek için okuyan bir kimseyse önemli değil 6 fakat büyüyü

Adım: Bakım bölümü için planlı bir bakım programının kurulması Dokuzuncu adım, TÜB 8 temel faaliyetlerinden biri olarak daha önce tanımlanmış olan bakım bölümü

Koca böylece nikâh akdi sebebiyle kadın için üzerine vâcip olan mehir ve nafaka gibi bütün haklardan kurtulur. Gerdeğe girmeden ve zifaftan önce kocadan ileri gelen

Ve zencilerin işleviyle ilgili olarak kafalarda herhangi bir şüp­ he kalmaması için, yeni doğan ulusun içinde de köle kalmayı sür­ düren tam altı yüz elli bin

Bu değerlendirme sürecinde benim de bir katkım olması için Yekta beye buradan kısa bir hikaye anlatmak istiyorum.. Şahsım ve benim durumumda olan binlerce ilim talebesi 1997 yılında