ana sayfa > Algoritma > Algoritma ve Akış Diyagramı Örnekleri (Doğrusal Akış Diyagramları)

Algoritma ve Akış Diyagramı Örnekleri (Doğrusal Akış Diyagramları)

Perşembe, 16 Nis 2009 yorum ekle yorumlara git

Algoritmanın bir problemi çözebilmek için izlenmesi gereken basamaklar serisi olduğu daha önce söylemiştik.  Bizler için bu problemler günlük yaşantı problemleri değilde programcılık mantığı ile çözülmesi gereken problemlerdir.

Biz bu problemleri basitten karmaşığa olarak sıralandıracaz.  Bu yüzden önce temeller adı altında basit örneklerle algoritma ve akış diyagramını anlamanızı sağlıyacaz. Daha çok doğrusal akış şemaları karşınıza çıkacak bu bölümde.  Hiç merak etmeyin son derece kolay anlaşılacağından eminim :)

Örnek 1: Klavyeden girilen 3 sayıyı toplayan ve ortalamasını alarak sonuçları ekrana yazdıran programın algoritmasını ve akış diyagramını tasarlayınız.

Şimdi bu örneği çözmeden önce şöyle bir düşünelim. Bu problemin çözümü için öncelikle elimizde verilerin olması gereklidir. yani 3 adet sayı girilmesi gerekli.  sayılar girildikten sonra sayılar toplanacak çıkan toplam 3 e bölünüp ortalaması bulunacak ve sonuçlar ekrana yazdırılacak. Şimdi bu düşündüklerimizi uygulayalım…

1. Değişkenler
x=Birinci sayı
y=ikinci sayı
z=üçüncü sayı
top=sayıların toplamı
ort=sayıların ortalaması

Şimdi değişkenlerimizi yazdık. Artık adım adım kafamızda tasarladığımız basamakları algoritma içerisinde yazalım.

Adım 1-Başla
Adım 2-Birinci sayıyı oku ve x ‘ e kaydet.
Adım 3-İkinci sayıyı oku ve y ‘ ye kaydet.
Adım 4-Üçüncü sayıyı oku ve z’ ye  kaydet.
Adım 5-top=x+y+z işlemini yap.
Adım 6-ort=top/3 işlemini yap.
Adım 7-top ve ort değerlerini ekrana yazdır.
Adım 8-Bitir

Şimdide algoritmadaki adımları akış diyagramına aktaralım.

algoorn1
Örnek 2
:  Şimdiki örneğimizde biraz geometrik şekilleri anımsayalım ve bazı hesaplamalar yapalım.

Sırasıyla, bir kenar uzunluğu verilen karenin alanını ve çevresini , bir kısa kenar ve bir uzun kenar uzunluğu verilen dikdörtgenin alanını ve çevresini, yine yarıçapı verilmiş bir dairenin alanını ve çevresini hesaplayan programın algoritmasını ve akış diyagramını tasarlayınız.

Problem biraz daha büyüdü sanırım. Ama meraklanmayın problemi aşama aşama çözmeye başladıkça aslında o kadar da zor olmadığını sizde göreceksiniz.

Önce değişkenlerimizi yazalım:
Değişkenler
Kare için:
kk: karenin bir kenar uzunluğu
ka:karenin alanı
kc:karenin çevresi
Dikdörtgen için:
dkk:Dikdörtgenin kısa kenar uzunluğu
duk:Dikdörtgenin uzun kenar uzunluğu
dia:Dikdörtgenin alanı
dic:Dikdörtgenin çevresi
Daire için
r:Daire nin yarıçap uzunluğu
da:Dairenin alanı
dc:Dairenin çevresi

Önceki örneğimize göre değişken sayısı arttı. Değişkenlere isim verirken türkçe karakter kullanmamaya özen gösterin. Ayrıca bazı kelimeler programlama dillerinde reserved(rezerv edilmiş ayrılmış) kelimelerdirç Örneğin abs matematiksel bir fonksiyondur.Çoğu programlama dilinde bu fonksiyon kütüphanelerde mevcuttur.

Şimdi ise algoritmamızı yazalım.
Adım 1-Başla
Adım 2-kk,dkk,duk,r değerlerini oku
Adım 3-ka=kk*kk , kc=kk*4  (Karenin alanını ve çevresini bulan formüller)
Adım 4 dia=dkk*duk, dic=2*(dkk+duk) (Dikdörtgenin çevresini ve alanını bulan formüller)
Adım 5 da=3.14*r*r , dc=2*3.14*r (Dairenin alanını ve çevresini bulan formüller)
Adım 6 ka, kc, dia, dic, da, dc değerlerini ekrana yazdır.
Adım 7 Bitir.

Burada her algoritmanın bir başlangıca ve bir bitişe sahip olduğunu fark etmişsinizdir.

Evet sırada akış diyagramımız var.

algoorn2

Örnek 3: Bir kırtasiye de kalem defter ve silgi satışı yapılmaktadır. Birim fiyatları ve kaç adet alındığını klavyeden girilerek bir müşterinin ne kadar ödemesi gerektiğini hesaplayan programın algoritmasını ve akış diyagramını çiziniz.

Değişkenler
Ürünlerin Satış Fiyatı
Kalemin Fiyatı : k
Defterin Fiyatı: d
Silginin Fiyatı: s

Alınan Ürün Miktarları
Kalem Miktarı: k1
Defter Miktarı: d1
Silgi Miktarı: s1

Toplam Ücret: t

Algoritma
Adım 1. Başla
Adım 2. Kalemin Fiyatını giriniz. (k)
Adım 3. Defterin Fiyatını giriniz.(d)
Adım 4. Silginin Fiyatını giriniz.(s)
Adım 5. Alacağımız Kalem miktarı(k1)
Adım 6. Alacağımız Defter miktarı(d1)
Adım 7. Alacağımız Silgi miktarı(s1)
Adım 8. Ödenecek toplam ücreti hesapla t:=(k*k1)+(d*d1)+(s*s1)
Adım 9. t değerini ekrana yaz.
Adım 10.Bitir

Akış Diyagramı

algo3

Örnek 4: Klavyeden girilen vize notunun %40′ ını final notunun %60 ‘ ını alarak ortalama notu bulduran programın algoritmasını ve akış diyagramını tasarlayınız.

Değişkenler
Vize notu: v
Final notu: f
Ortalaması : ort

Algoritma
adım 1. Başla
adım 2. Vize ve final notlarını klavyeden giriniz. (v,f)
adım 3. Ortalamayı hesapla ort=(v*0.4)+(f*0.6)
adım 4. Ort değerini ekrana yaz.
adım 5. Bitir

Akış Diyagramıalgo4

Örnek 5

Bir baba ve oğlunun yaşları farkını bulan programın algoritmasını ve akış diyagramını tasarlayınız.

Değişkenler
babanın yaşı: b
oğlunun yaşı: o
yaşlar farkı: fark

Algoritma
Adım 1: Başla
Adım 2: Babanın yaşını gir.(b)
Adım 3: Oğlunun yaşını gir.(o)
Adım 4: fark=b-0 işlemini yap
Adım 5: fark değişkenini ekrana yaz.
Adım 6: Bitir

Akış Diyagramı
algo5


Evet bu  temel örnekler bize doğrusal akış diyagramını sanırım yeterince açıklamıştır. Doğrusal denmesinin sebebi programın sürekli olarak tek yönde işlemesinden dolayıdır. Programda mantıksal bir karşılaştırma veya karar verme veya döngüsel bir işlem yapılmadığı için sürekli olarak tepeden aşağıya doğru işlemektedir. Diğer makalemizde mantıksal akış şemalarından devam edicez.  Şimdilik herkese iyi çalışmalar…

Join the Forum discussion on this post

Yazar: kacarozgur

Özgür Kaçar sitemizde 38 yazı eklemiş...




Benzer Konularımıza da Göz Atın!

coded by nessus
Share


Categories: Algoritma Tags:
Bu kategorideki rastgele diğer yazılar
  • » Akış Diyagramları ( Flow Chart )
  • » Algoritma ve Akış Diyagramı Örnekleri ( Mantıksal Akış Diyagramları)
  • » Algoritma ve Akış Diyagramı Örnekleri ( Döngülü Akış Diyagramları )
  • » Algoritma nedir ?



    • http://www.dahiweb.com/algoritma-ve-akis-diyagrami-ornekleri-temeller ahmet

      abi hesap makinesi akış diyagramını yazarmısınız acil_______________________________
      ____________________
      _________________________________________

      • http://www.dahiweb.com/siteye-destek-verenler/mustafa-sadoglu mustafa sadoglu

        kardeş yanlış anlama ama biz siteyi öğrencilerin ödevini çözmek için açmadık…
        size bilgi vermek, takıldığınız yerde yardımcı olmak için açtık…

    • abdullah

      sa emegine saglık kardeşim

    • merve

      güzel bir bilgi paylaşımı olmuş..
      yorumlarda okuduguma göre bi arkadas fibonecci sormus ama kimse cevap vermemiş..bende fibonecciyi akış şemasında anlamaya çalışıyorum ama bi türlü çözemedim..internette biraz arastırdım ve sonuc olarak F(n)= F(n-1)+ F(n-2), F(0) =0, F(1) =1 gibi bi formül çıkıyor ama bu formül mantıgıma pek yatmadı.yardımcı olursanız sevinirim..

    • hasan

      mrb ark bana 20 tane geometrik şekilin alan ve cevresını bulan programın algorıtması ve c # kodları lazım çok acil ödev teslım etmem gerekıyo ve ben bunu yapamıyorum yardımcı olan arkadaşlara şimdiden allah razı olsun ..

    • eCe

      ben bu algoritmalrı hiç anlamıorum anyabilmek için ne yapmalıyım çalışkırken sürekli ezber yapmak zorunda kalıorum :(

      • http://www.dahiweb.com/siteye-destek-verenler/mustafa-sadoglu mustafa sadoglu

        gerçekten bu mesleğin size uygun olmadığını düşünüyorsanız
        mesleki eğilim testini yapmalısınız…

    • http://www.hduman.com Hakkı Duman

      Öncelikle sınavda başarılar diliyorum mustafa akış şemasını burdan nasıl çizelim sana algoritmasını aşağıda veriyim ben sana sen onun akış diagramlarını çizersin kolay gele..

      1.başla
      2.sayac=0
      3.sayı gir
      4.sayı=0 git 6
      5.sayac=sayac+sayı git 3
      6.”sayac” yazdır
      7.bitir

    • mustafa

      arkadaslar yarina sınavim var size bir soru sorsam yarına kadar cevaplarsaniz çok iyi olur.
      klavyeden kullanici tarafından sürekli sayı girişi yapiliyor.girilen sayı 0 oluncaya kadar girilmiş tüm sayilarin toplamini bulan 0 girildiğinde programdan çikan ve sonucu ekrana yazdiran programin akış şemasini çiziniz. diye şimdiden t.sek

    • http://www.google.com Kerem

      çok güzel anlatmışsın baya bir yararı oldu teşekkürler

    • sinem

      teşekkür edrim konuyu güzel anlatmışsınız örnekler süper

    • http://profegod.tr.gg okan

      merhaba abilerim ablalarım kardeşlerim :D
      kısa kesecem bilişim bölümü 10 . sınıf öğrencisiyim programa temelleri dersinde hocamız bi ödev verdi bunu yapana 2 sözlü notunu 100 verecem dedi bu ödev üzerinde az cok uraştdım ama yapamadım yardımcı olursanız sevinirm

      Ödev Soru : Bir kullanıcı cep telofununa PIN kodunu girmek istiyor.Her denemede eğer PIN doğruysa Hoşgeldiniz yazan , Eğer PIN yanlışşsa en fazla 3 tekrar deneme hakkı veren eğer 3 haktada bilemezse PIN bloke oldu yazan programın akıs diyagramını çiziniz.

      Yardımlarınız için şimdiden teşekkürler :)

      affectueux-@hotmail.com

      BANA ULAŞIN

    • şeyma

      bana fibonnacci’nin akış diyagramı lazım… :(

    • onur

      bi soru sorsam akış diyagramı ile ilgili çözüp bana verebileck varmı acaba bana çok önemli???

    • berivan

      arkadaşlar obeb ve okeki hesaplayan akış diyagramını gösterirseniz çok sevinirim

    • http://www.hduman.com Hakkı Duman

      burcu :mrh arkadaslar bil prog 1 sınıf öğremncisiyim programda girilecek sayısal bilgilerin büyükten kücüge veya kücükten büyüğe sıralanacak algoritma türleri ve örnekleri verebilirmisiniz

      hangi programda çalışıyorsun QBasic, C,C++ ? Qbasic olarak yazıyım sana kodları sen kullandıgın programlama diline çevirirsin artık

      REM
      CLS
      input “1.sayı”;sayi1
      input “2.sayı”;sayi2
      if sayi1>sayi2 then print “büyükten küçüğe sıralama”; sayi1;sayi2
      else
      print “büyükten küçüğe sıralama”; sayi2;sayi1

      END

      bu şekilde bir yol kullanabilirsin fakat girilecek veriler çok fazlaysa biraz uğraşacaksın :)

    • http://facebook.com VAHAP

      mrh arkadaşlar aranızda bu konuyu anlamayan varsa bana danışabilir yardımcı olabilirim

    • adem

      1=) klavyeden kütlesi ve molekül ağırlığı girilen sayının mol sayısını hesaplayan programın algorizmasını ve akış diyagramını çiziniz.
      2=)klavyeden başlangıç kütlesi yarılanma süresi girilen bir radyo aktif elementin belirtilen süre sonunda kaç yarılanma geçireceğini ve kütlesinin ne kadar kalacağını hesaplayan programın diyagramını ve akış diyagramını çiziniz
      3=) klavyeden 3 kenarı girilen bir üçgenin eşkenar ikiz kenar olup olmadığını kontrol eden programın algoritmasını ve akış diyagramını çiziniz
      4=)klavyeden girilen 3 sayısını büyükten küçüğe doğru sıralayan programın algoritmasını ve akış diyagramını çiziniz
      5=)klavyeden girilen n değerine göre (n>20) olmak zorunda 10 ile N arası çift sayıların toplamını 5 ile N arası tek sayıların çarpımını 14 ile N arası çift sayıların karelerin toplamını hesaplayan yazdıran programı yazınız
      6=)klavyeden girilen < i büyük harfe dönüştüren programın algoritmasını ve akış diyagramını çiziniz?
      ya bu soruları cvp laya bilirmisiniz cavaplayabilirseniz sevinirim e postaya gönderirseniz sevinirim şimdiden teşekkür ederim…

    • burcu

      mrh arkadaslar bil prog 1 sınıf öğremncisiyim programda girilecek sayısal bilgilerin büyükten kücüge veya kücükten büyüğe sıralanacak algoritma türleri ve örnekleri verebilirmisiniz

    • İshak

      100! Faktoriyelin akış diyagramı nasıl yapılır bilen var mı ??

    • feRdi

      Mrb. Arkadaşlar Bende Bilgisayar Bölümüne Gidicemde BAna Önerirmisinizz? Herkez Zor Diyo Söylenilen Kadar Zormu YArdımcı Olursanız Sevinirm Teşekürler:)

      • http://www.dahiweb.com/siteye-destek-verenler/mustafa-sadoglu mustafa sadoglu

        herkesin bir kabiliyeti vardır… eğer kendinizi bilgisayar konusunda yetenekli görüyorsanız, meraklıysanız bence bu bölüm size uygundur… yok ben bilgisayarı sevmem… saatlerimi-günlerimi – aylarımı onun başında geçiremem… derseniz size tavsiye etmem…
        bu arada bilgisayar bölümünde 4 farklı (liseler için) dal var.. siz meraklı olduğunuz alanı bulun ve o alanla ilgilenin…
        iyi günler…

    • Selin

      Çok teşekkürler sınıfta anlayamamıştım :D

    • halit

      bu örnekler ne daha çok yok mu alla alla

    • serkan

      çok iyi

    • mehmet

      İKİ SAYININ OKEK VE OBEB İNİ ALAN PROGRAM NASIL OLACAK BANA YARDIMCI OLURSANIZ ÇOK İYİ OLUR

    • şule

      HAZIRLAYANLARIN EMEĞİNE ELLERİNE BEYNİNE KOLLARINA SAĞLIK!

    • http://... baver

      kullanıcıdan alınan iki sayıdan büyük olan kadar adınızı yazan proğramın akış şemasını çiziniz?
      ya bu soruyu yapabilirseniz sevinirim….

    • http://www.rizem.net Hasan

      Hocam elinize sağlık güzel olmuş. İşimize yaradı.

    • http://www.dahiweb.com/siteye-destek-verenler/mustafa-sadoglu mustafa sadoglu

      @Berk
      bir üstteki yorumda aynen şunları yazmışım

      mustafa sadoglu :

      @ali
      arkadaşlar: bize soruyu çözerken takıldığınız yeri söyleyin… yardımcı olalım… burada size yardımcı olmak için varız… ödevlerinizi çözmek için değil…

    • http://www.gta-tr.com Berk

      Yarı çapı klavyeden girilen dairenin alanını ve çevresini hesaplıyan programa ait akış diyagramı ve Algoritmasını hazırlayınız.

      Klavyeden girilen sayının karesini ve küpünü hesaplayıp ekrana yazdıran programın akış diyagramını ve Algoritmasını hazırlayınız.

      Doğum tarihi yıl olarak girilen öğrencinin yaşını hesaplıyan bir programın akış diyagramı ve algoritmasını yapınız.
      ———
      Bunlar benim bilgisayar ödevim de. Aceba yardım edebilirmisiniz ?

    • http://www.dahiweb.com/siteye-destek-verenler/mustafa-sadoglu mustafa sadoglu

      @ali
      arkadaşlar: bize soruyu çözerken takıldığınız yeri söyleyin… yardımcı olalım… burada size yardımcı olmak için varız… ödevlerinizi çözmek için değil…

    • ali

      1 ile 50 arasındaki sayıları toplamının algorırması nasıl olur_?_ bi yardımcı olun

    • onursezer

      éLLériNé sağLık TşKLér.

    • SneMm.

      Üçgen dikdörtgen kare ve dairenin alanlarını bulan program ?? Cok önmLi..

    • nrrr

      Klavyeden girilen 10 adet notun en büyük ve en küçüğünü bulan programı
      yapınız.
      3. Klavyeden girilen 5 adet sayının 10’dan büyük olanlarını sayan programı yapınız.
      4. Klavyeden 0 sayısı girilene kadar sayılar okutunuz. Girilen sayıların 2 katını
      alarak ekrana sonucu yazdırınız.
      Klavyeden 3 not girilir. İlk notun %30, ikinci notun %30 ve son notun da %40’ını
      bulan programı yapınız. Sonuç olarak da 3 notun yüzdelerini toplayıp ekrana
      yazdırınız.
      9. Klavyeden bir tam sayı okutunuz. Bu sayı ile klavyeden okunan diğer 10 sayıyı
      çarpma işlemi uygulayınız, sonuçları ekrana yazınız.

      bunların şemalarını nasıl çizebilirim ? acil yardım gerek ?

    • http://libertaquila.wordpress.com libertaquila

      Çok açıklayıcı ve akıcı anlatmışsınız elinize sağlık. teşekkürler.

    • sergen

      arkadaşlar bana fibonacci serisinin akış diyagramı lazım.bilen arkadaşlar lütfen acil cevap yazsın.şimdiden teşekkürler…

    • B!L@L

      merhabalar…örnekler çok açıklayıcı.sitenizi çok beğendim emeğinize sağlık.. Benim bir sorum var yardımcı olursanız sevinirim. 10 tabanında verilen bir tamsayıyı 2 tabanına dönüştüren algoritmanın akış diyagramını çizelim…

    • oğuz

      anlatım güzel ama biraz İF li örneklerde gösterirseniz daha iyi olur

    • trgut

      çok güzel anlatım olmuş ağzınıza sağlık :):):)

    • http://www.yavuzmercan.com yavuz

      arkadaşlar ya böle 3 sayının ortlaması yada baba oğul yaş farkı algoritmaları tamam anlaşılıo kolay gelio ama karmaşık işlemlerde ben çok zorlanıyorum ya

    • http://www.kacar.org kacarozgur

      teşekkürler arkadaşlar. arkadaşlar uzun bir süredir makalelere ara verdik ama devam edicez merak etmeyin.iyi çalışmalar

    • burcu

      @kübra(Q) arkadaşım zorlanılacak bişey yok sadece yapabileceğine inan ve konuyu tekrar et yeter…Zaten eğer bunları yaparsan zorlanmazsınn inan bana

    • burcu

      ÖrnekLeriniz sayesinde bu konuyu çoq iyi anladım.Çoq teşekkür ederimm.Zaten bu biLgiler ve örnekLerLe konuyu anlamamak mümkün değiL.Başırılarınız devamı diliyorum İyi çaLışmaLar… :D

    • kübra(Q)

      ya ben bilgisayarcı olarakbu konularda çok zorlndım

    • http://www.dahihost.com mustafasadoglu

      merhaba … ilk örnekte kullanılan x,y,z değişkenlerinin yanına a,b diye iki değişken eklersen sorunun çözülür… alttaki bölüm sayısını da 5 olarak değiştirmeyi unutma…
      eğer sorunu anlayabildiysem.. çözüm bu…

    • özcan

      yarına yazılım var algoritmadan soracakmış hoca buradan yardım aldım tşk ler bide bişe soracagım örneğin 5 tane sayı toplucaz bunların hepsini bir arada nasıl toplarım işlem kısmından sadece 2 sayı toplayabliiyiorun vede ööyle cok zaman kaybı oluyor acaba hepsini bir arada toplamam ömümkünmü yarına kadar cevaplarsanız sevnirim yarın yazılım çünkü :D:

    • http://www.kacar.org kacarozgur

      arkadaşlar e draw programının türkçe yaması yok ne yazık ki. çıkarsa siteye ekleriz. iyi çalışmalar

    • http://www.kacar.org kacarozgur

      şimdi arkadaşlar algoritma aslında akış diyagramının sözel olarak adım adım anlatılmasıdır. bana kalırsa bir problemi akış diyagramı ile ifade edebiliyorsanız zaten durumu çözmüşsünüz demektir. anlamadığınız yerleri net bir biçimde sorarsanız daha iyi yardım edebilirim. iyi çalışmalar…

    • kübra

      programlama temellerini güzel anlatmışınız ama bazı yerlerini anlayamadım ben sadece diyagram akışını öğrendim algoritayı görmedim sence ondan karıştırmış olabilirmiyim..

    • http://www.kacar.org kacarozgur

      arkadaşım birincisi bu bir program değil. bu programlama dillerinin temelidir.hepsinin ana düşüncesini vermektedir. anlaşılmayacak herhangi birşeyde yok sanırım. makaleleri algoritma kategorisinden en baştan okucak olursak sanırım daha anlaşılır olur. anlamadığın yerleri sorarsan sanırım daha iyi yardım e

    • ugur

      yav arkadaşım bu ne yha hiç bişey anlamadım daha geniş ve açık anlatırsan süper olur. kesın bu programı kullanmayı öğrenmem lazım


    HasMeydan.Com