Araştırma ve ödevleriniz için her türlü kaynağı ve dokümanı En Geniş Araştırma ve Ödev Sitesi: www.arsivbelge.com ile bulabilir ve İsterseniz siz de kendi belge ve çalışmalarınızı gönderebilirsiniz!
Her türlü ödev ve dokümanı
www.arsivbelge.com ile kolayca bulabilirsiniz!


Araştırmalarınız için Arama Yapın:





  
                    

Algoritma ve Akış Diyagramları Tanımı ve örnekleri
www.arsivbelge.com
Algoritma ve Akış Diyagramları Hakkında BilgiAlgoritma ve Akış Diyagramları Tanımı ve örnekleri dokümanıyla ilgili bilgi için yazıyı inceleyebilirsiniz. Binlerce kaynak ve araştırmanın yer aldığı www.arsivbelge.com sitemizden ücretsiz yararlanabilirsiniz.
Algoritma ve Akış Diyagramları Tanımı ve örnekleri başlıklı doküman hakkında bilgi yazının devamında...
Ödev ve Araştırmalarınız için binlerce dokümanı www.arsivbelge.com sitesinde kolayca bulabilirsiniz.

Algoritma ve Akış Diyagramları

Algoritma ve Akış Diyagramları Resimli Anlatım için tıklayınız.

ALGORİTMANIN HAZIRLANMASI

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 izin vermeksizin sözel olarak ifade edilir.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.

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.Aşağıda algoritma hazırlanmasına ilişkin örnekler yer almaktadır.

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

Algoritma

 

Adım 1-Başla

 

Adım 2-Birinci sayıyı oku

 

Adım 3-İkinci sayıyı oku

 

Adım 4-İki sayıyı topla

 

Adım 5-Dur

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 başladığını gösteren "BAŞLA" ifadesi ile başlamakta ve işlemlerin bittiğini belirten "DUR" ifadesi ile sona ermektedir.

AKIŞ ŞEMALARI(DİYAGRAMLARI)

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 sembollerle ifade edilmiş şekline "akış şemaları" veya FLOWCHART adı verilir.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 gösterilmesidir.

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ş 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 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 yapılır.

Akış şemalarının hazırlanmasında aşağıda yer alan simgeler kullanılır.

 

Algoritmanın başladığını ya da sona erdiğini belitmek için kullanılır.

 

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

 

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

 

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

 

Araç belirtmeden giriş ya da çıkış yapılacağını gösterir.

 

Hesaplama ya da değerlerin değişkenlere aktarımını gösterir.

 

Aritmetik ve mantıksal ifadeler için karar verme ya da karşılaştırma durumunu gösterir.

 

Diskten okuma ya da diskete yazmayı gösterir.

 

Disketten okuma ya da diskete yazmayı gösterir.

 

Teyp kütüğünü gösterir.

 

Yapılacak işler birden fazla sayıda yinelenecek ise diğer bir deyişle iş akışında çevrim(döngü) var ise bu sembol kullanılır.

 

Akış diyagramında iki nokta arası ilişkiyi gösterir.Döngü sonunu göstermek için ya da diyagramın çizilemediği durumlarda kulllanılır. Burada i herhangi bir sembol olabilir.

 

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

Akış şemaları içerik ve biçimlerine göre genel olarak üç grupta sınıflandırılabilirler.

DOĞRUSAL AKIŞ ŞEMALARI

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

ÖRNEK 2:İki sayının çarpımının bulunmasıyla ilgili algoritma şöyledir.

Değişkenler

A:Birinci sayıyı,

 

B:İkinci sayıyı,

 

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

 

Algoritma

Adım 1-Başla

 

Adım 2-A'yı oku

 

Adım 3-B'yi oku

 

Adım 4-C=A*B yi hesapla

 

Adım 5-C'yi yaz

 

Adım 6-Dur

 

Algoritma adımlarında kullanılması gereken semboller yukarıdaki şekilde görülmektedir.Örneğin "DUR" ve "BAŞLA" işlemleri için aynı sembol kullanılmaktadır.Adım 2 ve 3 için kullanılan sembol,bilgisayara değerlerin dışarıdan girildiğini gösterir.Oklar ise işin akış yönünü gösterir. Adım 4'te kullanılan sembol C=A*B gibi aritmetik işlemler işlemler için kullanılır.

Örnek 3:İki sayının farkını ve bölümünü bulup yazıcı ile yazan algoritma ve akış şeması şöyledir.

Değişkenler

A:Birinci sayı

 

B:İkinci sayı

 

D:İki sayının farkını (A-B)

 

E:İki sayının bölümünü(A-B)

 

Algoritma

Adım 1-Başla

 

Adım 2-A'yı oku

 

Adım 3-B'yi oku

 

Adım 4-D=A-B

 

Adım 5-E=A/B

 

Adım 6-D'yi yaz

 

Adım 7-E'yi yaz

 

Adım 8-Dur

 

ÖRNEK 4:İki sayının toplamlarının karesini ve küpününü hesaplayıp yazan akış şeması şöyledir.

Değişkenler

BIRSA:Birinci sayıyı,

 

IKISA:İkinci sayıyı,

 

TO:Toplamı,

 

TOKA:Toplamın karesini,

 

TO3:Toplamın küpünü gösterir.

 

Algoritma

Adım 1-Başla

 

Adım 2-BIRSA.ve IKISA'yı oku

 

Adım 3-TO=BIRSA+IKISA

 

TOKA=TO^2

 

TO^3

 

Adım 4-TOKA,TO3'ü yaz

 

Adım 5-DUR

 

ÖRNEK 5:Terminalden okunan bir sayının 10 fazla ve 10 eksiğini bulup yazan programın algoritma ve akış şeması şöyledir.

Değişkenler

SAYI=Okunacak sayı

 

F10=Sayının 10 fazlası

 

E10=Sayının 10 eksiğini göstersin.

 

Algoritma

Adım 1-Başla

 

Adım 2-Terminalden SAYI oku

 

Adım 3-F10=SAYI+10

 

Adım 4-E10=SAYI-10

 

Adım 5-DUR

 

MANTIKSAL AKIŞ ŞEMALARI

Geniş ölçüde mantıksal kararları içeren akış şemalarıdır.Hesap düzenleri genellikle basittir.

ÖRNEK 6:A ve B gibi iki sayıdan büyüğünü printerle yazdıran algoritma ve akış şeması şöyledir.

Algoritma

Adım 1-Başla

 

Adım 2-A,B'yi oku

 

Adım 3-A=B ise Adım 7'ye git

 

Adım 4-A>B ise Adım 6'ya git

 

Adım 5-B'yi yaz Adım 8'e git

 

Adım 6-A'yı yaz Adım 8'e git

 

Adım 7-"A veB eşit"mesajını yaz

 

Adım 8-DUR

 ÖRNEK 7:100 kişilik bir sınıfta 18-22 arası her ysş grubunda kaç öğrencinin bulunduğunu belirleyip yazan programın akış çizelgesi şöyledir.

Değişkenler

OSA:Öğrenci sayısını,

 

I18:18 yaşında olan öğrencilerin sayısını

 

I19:19 yaşında olan öğrencilerin sayısını

 

I20:20 yaşında olan öğrencilerin sayısını

 

I21:21 yaşında olan öğrencilerin sayısını

 

I22:22 yaşında olan öğrencilerin sayısını

 

IYOS:İşlem yapılan öğrenci sayıaını göstersin.

 

Algoritma

Adım 1-Başla

 

Adım 2-I18=0 I19=0 I20=0 I21=0 I22=0 IYOS=0

 

Adım 3-OSA oku

 

Adım 4-OSA=18 ise I18'i arttır, Adım 9'a git

 

Adım 5-OSA=19 ise I19'u arttır, Adım 9'a git

 

Adım 6-OSA=20 ise I20'yi arttır,Adım 9'a git

 

Adım 7-OSA=21 ise I21'i arttır,ADım 9'a git

 

Adım 8-OSA=22 ise I22'Yİ arttır,Adım 9'a git

 

Adım 9-IYOS<100 ise Adım 3'e git

 

Adım 10-I18,I19,I20,I21,I22,yaz

 

Adım 11-DUR

 

 

YİNELİ (İTERATİF,ÇEVRİMLİ,DÖNGÜLÜ)AKIŞ ŞEMALARI

Sorunun çözümü için,çözümde yer alan herhangi bir adım ya da aşamanın birden fazla kullanıldığı akış şemalarına denir.İş akışları genel olarak giriş ya da başlangıç değeri verme,hesaplama,kontrol biçimindeöolmaktadır.

ÖRNEK 8:3 öğrencinin bir sınavdan aldıkları notların ortalamasını bulan v yazan bir programın algoritma ve akış şeması şöyledir.

ÖRNEK 7:100 kişilik bir sınıfta 18-22 arası her ysş grubunda kaç öğrencinin bulunduğunu belirleyip yazan programın akış çizelgesi şöyledir.

Değişkenler

ONOT:Öğrencinin notunu,

 

INOT:Notların toplamını,

 

NORT:Notların ortalamasını,

 

ISAYI:Öğrenci sayısını göstersin.

 

Algoritma

Adım 1-Başla

 

Adım 2-INOT=0

 

Adım 3-ISAYI=0

 

Adım 4-ONOT oku

 

Adım 5-INOT=INOT+ONOT

 

Adım 6-ISAYI=ISAIY+1

 

Adım 7-ISAYI<3ise Adım 4'e git

 

Adım 8-NORT=INOT/3

 

Adım 9-NORT YAZ

 

Adım 10-DUR

Görüldüğü gibi,Adım 2 ve 3'te INOT ve ISAYI ismi ile iki değişken için bellekte yer ayrılmış,ayrılan yerlerede ilk değer olarak sıfır atanmıştır.

Adım 4'te herhangi bir öğrencinin sınavdan almış olduğu notun değeri okutulmaktadır.

Adım 5'tenotların toplamının bulunması işlemi yer almaktadır.İşlemde ONOT,INOT ile toplanmakta ve bulunantoplamda INOT'a aktarılmaktadır.

Adım 6'da öğrenci sayısını gösteren ISAYI değişkeninin değeri,"bir öğrenci için işlem yapıldı"anlamında 1 arttırılmaktadır.

Adım 7'de ISAYI'nın değeri 3(toplam öğrenci sayısı) ile karşılaştırılmaktadır.Eğer sayı<3 ise Adım 4'e dönülmektedir.Eğer işlem 3 öğrenci içinde yapılmışsa yani ISAYI=3 ise ya da ISAYI>3 ise ortalamanın hesaplandığı Adım 8'e geçilmektedir.Adım 9 da,bulunan ortalamanın yazılması ile ilgilidir.

 

Akış şeması incelendiğinde not okuma, toplam hesaplama ve öğrenci sayısını 1 arttırma işlemlerinin 3 kez tekrarlandığı anlaşılmaktadır.Eğer program 500 öğrenci için yapılmış olsaydı,sözü edilen işlemler 500 kez tekrarlanacaktı. Üç öğrencinin notlarının, sırası ile 50,60 ve 70 olduğunu varsayalım.Bu durumda akış şemasının işlemesi şöyle olacaktır

 

Başlangıçta INOT veISAYI "0" değerini alırlar.Bilgisayara ilk not olarak 50 okutulur.Başlangıçta INOT=0 olduğu için INOT ile 50 toplanır ve sonuç INOT'a aktarılır.Dolayısıyla INOT'un yeni değeri 50 olur.Daha sonra ISAYI'nın değeri INOT'ta olduğu gibi 1 arttırılır.ISAYI=1 olduğu için 3 ile karşılaştırma yapıldığında tekrar okuma işlemine geri dönülür ve ikinci not olarak60 okutulur.İşlemler bu şekilde devam eder.ISAYI=3 olunca ortalamanın hesaplamasına geçilir.Son olarak bulunan ortalama yazılır ve durulur.

Aynı sorun yineleme sembolü kullanılarak şöyle yazılabilir.

 

ÖRNEK 9:

N sayısını ekrandan okutarak faktöriyelini hesaplayanve yazan akış şeması şöyledir.

Değişkenler

NFAK=N faktöriyel (N!) değerini,

 

ISAYI=1'den N'e kadarsayıları göstersin,

 

NFAK=1*2*......*N

 

Algoritma

Adım 1-Başla

 

Adım 2-N'i ekrandan oku

 

Adım 3-NFAK=1

 

Adım 4-ISAYI=1

 

Adım 5-ISAYI=ISAYI+1

 

Adım 6-NFAK=NFAK*ISAYI

 

Adım 7-Eğer ISAYIAdım 8-NFAK yaz

 

Adım 9-Dur

 Aynı soru yineleme sembolü kullanılarak aşağıdaki gibi de çizilebilir.

ÖRNEK 9:Klavyeden girilen,bir öğrencinin numarasını,ismini ve bilgisayar programlama dersinin 3 vize sınavından aldığı notları okuyan,bu notların aritmetik ortalamasını bulan,eğer ortalaması 50'ye eşit veya 50'den büyükse yazıcıya numara,isim,notlar ve vize notlarının ortalamasını,küçükse numara,isim ve "tekrar" mesajı yazan programın algoritma ve akış şeması şu şekildedir.

Değişkenler

INO:öğrencinin numarasını,

 

AD:öğrencinin ismini,

 

VIZE1:1.vize sınavını,

 

VIZE2:2.vize sınavını,

 

VIZE3:3.vize sınavını,

 

VIZORT:üç vize sınavının aritmetik ortalamasını,

 

VIZTO:üç vizenin toplamını göstersin.

 

Algoritma

Adım 1-Başla

 

Adım 2-INO,AD,VIZE1,VIZE2,VIZE3,oku

 

Adım 3-VIZTO=(VIZE1+VIZE2+VIZE3) ve VIZORT=VIZTO/3 bul.

 

Adım 4-Eğer VIZORT>=50 ise Adım 6'ya git.

 

Adım 5-INO,AD ve "TEKRAR" yaz ve Adım 7'ye git.

 

Adım 6-INO,AD,VIZE1,VIZE2,VIZE3,VIZORT yaz

 

Adım 7-DUR

ÖRNEK 10:Bir okulda bulunan 10 sınıftaki 30'ar öğrencinin herbirinin 12 şer dersten aldıkları notların ortalamasını bulan ve öğrenci ismi ile not ortalamasını yazan programın,algoritması ve akış şeması şöyledir:

Değişkenler

ISS:Sınıf sayacı,

 

IOS:Öğrenci sayacı,

 

DN:Ders notu,

 

DNS:Ders notu sayacı,

 

DNT:Ders notlarının toplamı,

 

DNO:Ders notlarının ortalaması,

 

OGAD:Öğrencinin adı

 

Algoritma

Adım 1-Başla

 

Adım 2-SS=0

 

Adım 3-IOS=0

 

Adım 4-DNS=DNT=0

 

Adım 5-OGAD oku

 

Adım 6-DN oku

 

Adım 7-DNS=DNS+1(ders notu sayacı 1 artır.

 

Adım 8-DNT=DNT+DN(notları topla)

 

Adım 9-Eğer DNS<12 ise adım 6'ya git

 

Adım 10-DNO=DNT/12(ortalamayı hesapla)

 

Adım 11-OGAD,DNO yaz

 

Adım 12-IOS=IOS+1(öğrenci sayacını bir artır)

 

Adım 13-Eğer IOS<30 ise adım 4'e git

 

Adım 14-ISS=ISS+1(sınıf sayacını bir artır)

 

Adım 15-Eğer ISS<10 ise adım 3'e git.

 

Adım 16-Dur

 ÖRNEK 11:300 elemanlı bir veri grubunda bulunan pozitif,sıfır ve negatif değerlerin sayısını bulup yazan programın algoritması ve akış şeması şöyledir:

Değişkenler

SS:Okunan sayı adedi

 

PSS:pozitif sayı adedi

 

NSS:Negatif sayı adedi

 

SSS:Sıfır sayı adedi

 

Algoritma

Adım 1-Başla

 

Adım 2-SS=PSS=NSS=SSS=0

 

Adım 3-Sayı oku

 

Adım 4-SS=SS+1

 

Adım 5-Eğer SS>300 ise dur

 

Adım 6-Eğer sayı<0 ise adım 9'a git

 

Adım 7-Eğer sayı=0 ise adım 10'a git

 

Adım 8-PSS=PSS+1 hesapla,adım 3'e git

 

Adım 9-NSS=NSS+1 hesapla,adım 3'e git

 

Adım 10-SSS=SSS+1 hesapla,adım 3'e git

 ÖRNEK 12:Bir sınıfta bulunan belirsiz sayıdaki öğrencilerin numarasını,adını ve soyadını yazan programın algoritması ve akış şeması şöyledir.

Değişkenler

JNO:Öğrencinin numarası

 AD:Öğrencinin adı

 SAD:Öğrencinin soyadı

 

Algoritma

Adım 1-Başla

 Adım 2-Eğer okuma bittiyse Adım 6'ya git

 Adım 3-JNO,AD,SAD oku

 Adım 4-JNO,AD,SAD yaz

 Adım 5-Adım 2'ye git

 Adım 6-Dur

 ÖRNEK 13:f(x) fonksiyonu x'in çeşitli değerlerine göre aşğıdaki şekilde değişmektedir.x değeri sıfır ile 5 arasında 0.5 aralıkla arttığına göre herbir x değeri için f(x) fonksiyonunu hesaplayan ve x ile f(x) değerlerini yazan programın akış şeması şöyledir.

Algoritma ve Akış Diyagramları Örnekleri

Örnek 1: Girilen 2 sayıdan büyük olanı ekrana yazdıran programın algoritmasını ve akış diyagramını tasarlayınız.

Şimdi bu örnekte doğrusal akış diyagramlarından farklı olarak bir karar verme söz konusu. girilen ilk sayı x olsun ikinciside y olsun. x sayısımı y den büyük yoksa y sayısı mı x den büyük yoksa iki sayı birbirine eşitmi. Bu durumda bir karar verme ve bu karar sonucunda büyük olan sayının ekrana yazdırılması söz konusudur.

Değişkenler
Birinci sayı: x
İkinci sayı: y

Algoritma
Adım 1: Başla
Adım 2:Birinci sayıyı gir.(x)
Adım 3:İkinci sayıyı gir.(y)
Adım 4:Eğer x>y ise ekrana 1. sayı büyüktür yaz.
Adım 5:Eğer y>x ise ekrana 2. sayı büyüktür yaz.
Adım 6:Ekrana sayılar birbirine eşittir yaz.
Adım 7:Bitir

Akış Diyagramı

 Örnek 2: Girilen bir sayının tek mi çift mi olduğunu tespit eden programın algoritmasını ve akış diyagramını tasarlayınız.

Şimdi böyle bir soruda bir  sayının 2 ye bölündüğü zaman 0 kalanını verirse sayı çift 1 kalanını verirse sayı tek olduğu bilgisini hatırlatmamız lazım. Yani burda yine bir karar verme söz konusudur. Mesala

5 sayısı tek mi çift mi ?               5    i 2 ye bölersek kalan 1            Tek
18 sayısı tek mi çift mi ?             18 i 2 ye bölersek kalan 0           Çift

Bir sayının bölümden kalanını bulan matematiksel bir fonksiyon mevcuttur. Birçok programlama dilinde de bu fonksiyon tanımlanmıştır. Mod fonksiyonu denilen bu fonksiyonun kullanılışı:

6 mod 2        anlamı  6 nın 2 ye bölümünden kalan sonuç değeri sıfır.
7 mod 2        anlamı   7 nin 2 ye bölümünden kalan sonuç değeri birdir.

Değişken
Girilen sayı : x

Algoritma
Adım 1:Başla
Adım 2:Herhangi bir sayı giriniz.(x)
Adım 3:Eğer x mod 2 =0 ise ekrana çift yaz değilse tek yaz.
Adım 4:Bitir

 Örnek 3: Girilen sıcaklık değerine göre bir suyun katı, sıvı ve gaz olma durumunu gösteren programın algoritmasını ve akış şemasını tasarlayınız.

Şimdi soruyu çözmeden önce kimya konularını biraz hatırlayalım. Su sıfır derecenin altında katı, 0-100 derece arasında ise sıvı, 100 dereceden fazla ise gaz halinde bulunur. Dolayısı ile bu soruda kullanıcı su sıcaklığını girdikten sonra belirli karşılaştırmalar yaparak karar vermemiz lazım.

Değişkenler
Sıcaklık değeri: t

Algoritma
Adım 1:Başla
Adım 2:Sıcaklık değerini giriniz.(t)
Adım 3: Eğer t<0 ise Ekrana katı yaz.
Adım 4: Eğer t>0 ve t<100 ise ekrana sıvı yaz değilse gaz yaz.
Adım 5: Bitir.

Akış Diyagramı

Yukarıdaki akış diyagramından da anlaşılacağı gibi t değeri giriliyor. önce 0 dan küçük mü ona bakıyoruz. eğer küçükse ekran katı yazıyor ve programı bitiyor değilse diğer karar verme durumu oluşuyor. bu sefer 0 ile 100 arasında olup olmadığı sorgulanıyor. evet ise ekrana sıvı yazıyor değil ise girilen değer 100 ve 100 den büyük değere sahip olduğu için direkt olarak ekrana gaz yazılıyor ve program sonlandırılıyor.

Örnek 4: Bir dersten 3 sınav notu alan bir  öğrencinin :
a- ortalamasını
b-5 li sistemdeki not karşılığını
c-harfli sistemdeki not karşılığını
yazdıran programın algoritmasını ve akış diyagramını tasarlayınız.

Şimdi bu programı çözmeden önce matematiksel işlemler ve not verme sisteminden bahsedelim.

Öncelikle alınan üç not sırasıyla x,y,z olsun ortalaması (x+y+z)/3 değerinden çıkar.
5 li sistemde verilen notlar:
100-85 dahil aralığı not 5 olur. Harfli sistemde A olur.
84-70   dahil aralığı not 4 olur. Harfli sistemde B olur.
69-55   dahil aralığı not 3 olur. Harfli sistemde C olur.
54-45   dahil aralığı not 2 olur. Harfli sistemde D olur.
44-25   dahil aralığı not 1 olur. Harfli sistemde E olur.
24-0     dahil aralığı not 0 olur. Harfli sistemde F olur.

Değişkenler
girilen not değerleri:  a,b,c
derslerin ortalaması: ort
0-5 arasındaki rakamsal notu: r
A-F aralığındaki harfsel notu: h

Algoritma
Adım 1: Başla
Adım 2: Ders notlarını al.(a,b,c)
Adım 3: ortalama değerini hesapla ort=(a+b+c)/3
Adım 4: eğer ort>84  r=5 h=a adım10 a git.
Adım 5:eğer ort>69 r=4 h=b adım 10 a git.
Adım 6:eğer ort>54 r=3 h=c adım 10 a git.
Adım 7:eğer ort>44 r=2 h=d adım 10 a git.
Adım 8:eğer ort>24 r=1 h=e adım 10 a git.
Adım 9:r=0 h=f
Adım 10: r ve h değerlerini ekrana yaz.
Adım 11: Bitir.

Şimdi adımları incelersek ort değeri bulunduktan sonra eğer ifadeleri ile bulunan ort değeri teker teker sınanıyor ve h ve r değişkenleri değerlerini alıyorlar. Adım 10 da ise bulunan değerler ekrana yazılıp program sonlandırılıyor.

Akış Diyagramı


Bir hatırlatma yapmak gerekirse bir sorunun çözümünde farklı algoritmalar oluşabilir. Yani bir sorunun farklı şekillerde çözümlemesi yapılabilir. Örneğin bu soruda tersten de gidilebilirdi. Yani alınan not 5 den 0 a değilde 0 dan 5 mi şeklinde sorgulanabilirdi.

Örnek 5: Bir fabrikada sabit maaşla çalışan işçiler aile durumlarına ve ürettikleri parça sayısına görede ek maaş almaktadır. Aşağıda verilen yönergelere göre işçilerin maaşlarını hesaplayan programın algoritmasını ve akış diyagramını tasarlayınız.

Çocuk sayısı1 ise maaşın %5 i
Çocuk sayısı 2 ise maaşın %10 u
Çocuk sayısı 3 ve 3 den fazla ise maaşın %15 i kadar aile yardımı.

Üretilen parça sayısı 50-100 arasında ise maaşın %10 u
Üretilen parça sayısı 100-150 arasında ise maaşın %15 i
Üretilen parça sayısı 150-200 arasında ise maaşın %20 si

Değişkenler
İşçinin sabit maaşı:m
Çocuk sayısı:c
Ürettiği parça sayısı:p
Çocuk yardımı:  cy
Parça yardımı: py
Ödenecek toplam maaş: t

Algoritma
Adım 1: Başla
Adım 2: Sabit maaş, Çocuk sayısı,Üretilen Parça sayısını gir.(s,c,p)
Adım 3: Eğer c=1 ise cy=m*0.05
Adım 4: Eğer c=2 ise cy=m*0.1
Adım 5: Eğer c>2 ise cy=m*0.15
Adım 6: Eğer (p>=50 ve p<100)  ise py=m*0.1
Adım 7: Eğer (p>=100 ve p<150)  ise py=m*0.15
Adım 8: Eğer(p>=150) ise py=m*0.2
Adım 9: t=m+cy+py
Adım 10: t değerini ekrana yaz.
Adım 11: Bitir

Akış Diyagramı

 Örnek 6: Klavyeden 3 adet kenar uzunluğu giriliyor. Girilen kenar uzunlukları ile :

a-Üçgenin çizilip çizilemiyeceğini
b-Eğer üçgen çizilirse Üçgenin çeşidini(ikizkenar, çeşitkenar, eşkenar)
c- çizilen üçgenin alan ve çevresini bulup ekrana yazan programın algoritmasını ve akış diyagramını tasarlayınız.

Şimdi bu soruyu çözmeden önce biraz geometrik işlemlerden bahsedelim :

Birincisi üçgenin üçgen olabilmesi için bir kenarı diğer iki kenarının toplamından küçük ve yine diğer iki kenarın farkından büyük olmak zorundadır. Bu özellik tüm kenarlar için doğru olursa belirtilen ölçülerde bir üçgen çizilebilir demektir.

Üçgen tiplerinde eşkenar üçgen tüm kenarları eşittir, ikizkenar üçgen de herhangi iki kenar birbirine eşittir, çeşitkenar üçgende ise tüm kenar uzunlukları birbirinden farklıdır.

Üçgenin çevresi tüm kenar uzunlukları toplamına eşittir. Alan formüllerinden biri ise Alan=U*((U-a)*(U-b)*(U-c))^1/2 U burada çevrenin yarısı kadardır. Yani yarı çevrede denilebilir. Bu bilgilerin ışığında algoritmamız aşağıdaki şekilde düzenlenmiştir.

Algoritma
Adım 1 :  Başla
Adım 2:  Üç kenar uzunluğunu giriniz.(a,b,c)
Adım 3:  Eğer( (a+b>c) ve (a-b<c))  veya ( (a+c>b) ve (a-c<b)) veya ((b+c>a) ve (b-c<a))değilse ekrana “Bir üçgen çizilemez.” yaz ve Adım 10 a git.
Adım 4:  Eğer ((a=b) ve (b=c) ve (a=c))  ise ekrana “Eşkenar üçgen” yaz.
Adım 5:  Eğer ((a<>b) ve (a<>c)  ve (b<>c)) ise ekrana “Çeşitkenar üçgen” yaz.
Adım 6:  Eğer ((a=b) ve (b<>c)) veya ((a=c) ve (c<>b)) veya ((b=c) ve (c<>a)) ise ekrana “İkizkenar Üçgen”  yaz.
Adım 7: Üçgenin çevresini bul.  (C=a+b+c)
Adım 9: Üçgenin yarım çevresini bul. (U=C/2)
Adım 8: Üçgenin alanını bul. (A=U*((U-a)*(U-b)*(U-c))^1/2
Adım 9: Çevre ve alan değerlerini ekrana yaz.(C,A)
Adım 10: Bitir

Algoritma ve Akış Diyagramları Örnekleri için tıklayınız.


Ekleyen:Ümit SERT
Kaynak:(Alıntıdır)
Aradığınız Dokümanı Bulamadıysanız, Farklı Araştırmalar Yapmak İstiyorsanız Site İçi Arama Yapabilirsiniz!

Ödev ve Araştırmalarınız için www.arsivbelge.com Sitesinde Kaynak Arayın:


Ödev ve Araştırmalarınız için Arama Yapın:
     Benzer Dokümanları İnceleyin
Algoritma ( Algorithm )(1902)

          Tanıtım Yazıları
      
Türkçe İtalyanca ve Almanca Cümle Çevirisi İçin Birimçevir Sitesi

Esenyurt, Beylikdüzü ve Kartal Bölgelerinde Satılık Daire İlanları

Belge Çevirisi

Siz de Tanıtım Yazısı Yayınlamak İçin Tıklayın

Diğer Dökümanlarımızı görmek için: www.arsivbelge.com tıklayın.          

Siz de Yorum Yapmak İstiyorsanız Sayfanın Altındaki Formu Kullanarak Yorum Yazabilirsiniz!

yağmur çakmak - 27.04.2015, 17:46
 

çok güzel bir site thank you

 


Özdem Yılmaz - 02.11.2015, 17:39
 

gerçekten çok beğendim. teşekkürler anlatım harika


ibrahim güzel - 02.01.2016, 10:14
 

merhaba; klavyeden iki basamaklı sayı girilene kadar sayı girişi yapılan programın algoritması ve akış diyagramı?

çok acil


Yorum Yaz          
Öncelikle Yandaki İşlemin Sonucunu Yazın: İşlemin Sonucunu Kutucuğa Yazınız!
Ad Soyad:
          
Yorumunuz site yönetimi tarafından onaylandıktan sonra yayınlanacaktır!