algorİtma ve programlama (bölüm 1) · pdf filealgorİtma ve programlama...

Download ALGORİTMA VE PROGRAMLAMA (Bölüm 1) · PDF fileALGORİTMA VE PROGRAMLAMA (Bölüm 1) 1 Prof. Dr. Hakan Ündil - Elektronik Teknolojisi - 2015-2016 Güz (VİZEDE SORUMLU OLUNAN KONULARINI

If you can't read please download the document

Upload: trankhue

Post on 06-Feb-2018

232 views

Category:

Documents


3 download

TRANSCRIPT

  • ALGORTMA VE

    PROGRAMLAMA

    (Blm 1)

    1

    Prof. Dr. Hakan ndil - Elektronik Teknolojisi - 2015-2016 Gz

    (VZEDE SORUMLU OLUNAN KONULARINI KAPSAR)

  • PROBLEM ZME ve ALGORTMALAR

    Bir problemi zmek iin yaplacak ilemler

    en genel ekilde iki admda incelenebilir:

    1. Algoritma (Problemi zme Yolu)

    2. Kodlama (Gerekletirme)

    2

  • 1. Algoritma

    Problemin zmn tanmlayan

    admlarn srasyla elde edilmesidir.

    3

    PROBLEM ZME ve ALGORTMALAR (Devam)

  • Her Algoritma Aadaki Kriterleri Salamaldr:

    1. Girdi : Dardan Sfr veya farkl bir deer verilmeli.

    2. kt : En azndan bir deer retilmeli.

    3. Aklk : Her ilem (komut) ak olmal ve farkl anlamlar

    iermemeli.

    4. Sonluluk : Her trl ihtimal iin algoritma sonlu admda

    bitmeli.

    5. Etkinlik : Her komut, kiinin kalem ve kat ile

    yrtebilecei kadar basit olmaldr.

    4

    PROBLEM ZME ve ALGORTMALAR (Devam)

  • PROBLEM ZME ve ALGORTMALAR (Devam)

    Algoritma yapma Srasnda Dikkat Edilecek Hususlar:

    Doruluu kesin olarak ispatlanmadka, hibir eyi doru

    olarak kabul etmeyin; tahmin ve nyarglardan kann.

    Karlatnz her gl mmkn olduu kadar ok

    paraya bln.

    Anlalmas en kolay olan (basit) eylerle balayp yava

    yava daha zor ve karmak olanlara doru ilerleyin.

    nce olaya baknz ok genel, sonra hazrlayacanz

    ayrntl liste (detayl algoritma) ise hibir eyi darda

    brakmayacak kadar kusursuz ve eksiksiz olsun.

    5

  • 2. Kodlama

    Bir programlama diliyle bu Algoritmann

    programa (yazlma) dntrlmesidir.

    6

    PROBLEM ZME ve ALGORTMALAR (Devam)

  • Kodlama (Programlama) Dili Seerken;

    Dil yaplacak ie uygun zelliklere sahip mi ?

    Dier dillerle uyumluluu ve bu dillere dntrme

    imkanlar nedir?

    renmesinin kolay/zor olup olmad, rnekler var

    m?

    Piyasada, bu dili kullanan, yeteri kadar i gc(kii)

    olup olmad gibi hususlara dikkat edilmelidir.

    7

    PROBLEM ZME ve ALGORTMALAR (Devam)

  • PROBLEM ZME ve ALGORTMALAR (Devam)

    zme Aamalar

    Problem zme Aamalar: (Daha Ayrntl)

    1. Sistem htiyalar:

    Sistem ihtiyalarna gre problemin tam olarak ne

    olduunun anlalmasdr.

    Problemin zmnden neler beklendii bilinmelidir.

    zmn girdi ve ktlarnn neler olaca kesin

    olarak belirlenmelidir.

    8

  • PROBLEM ZME ve ALGORTMALAR (Devam)

    zme Aamalar

    2. Analiz:

    Sistem ihtiyalar belirlendikten sonra bunlar

    temel paralara ayrlarak bu paralar ayr ayr

    deerlendirilir.

    Bu paralar arasndaki ilikiler tanmlanr.

    Bu suretle sonuca gitmeye allr.

    9

  • 3. Tasarm (Algoritma):

    Kullanlacak zm admlarn gsteren

    Algoritma ad verilen bir liste yaplr

    Byle bir algoritma tasarlanrken ilk nce ana

    (genel) admlar karlr.

    Daha sonra her adm iin daha ayrntl bir

    algoritmaya geilir.

    10

    PROBLEM ZME ve ALGORTMALAR(Devam)

    zme Aamalar

  • 4. Kodlama (Programlama):

    Gelitirilen algoritma bir programlama diline

    evrilir.

    Bu dilin, programn yazmn ar

    zorlatrmayacak ve karmaklatrmayacak

    bir dil olmas tercih edilmelidir.

    Program yazacak olann bilgisi de dikkate alnr.

    11

    PROBLEM ZME ve ALGORTMALAR(Devam)

    zme Aamalar

  • 5. Sistem Testi:

    Program deiik girdiler ile altrlr

    Programn rettii sonular (ktlar) kontrol

    edilerek test ilemi gerekletirilir.

    Sonular beklendii gibi ise programn doru

    alt ispatlanm olunur

    Deilse doru almayan ksmlar tespit edilerek

    dzeltilir.

    12

    PROBLEM ZME ve ALGORTMALAR(Devam)

    zme Aamalar

  • 6. Bakm:

    Programn gncel artlara gre yeniden

    dzenlenmesini ieren bir konudur.

    Oluan hatalarn giderilmesi

    Yeni eklemeler yaplmas

    Ya da programn teknolojisinin

    yenilenmesi gibi ilemlerdir.

    13

    PROBLEM ZME ve ALGORTMALAR (Devam)

    zme Aamalar

  • 14

    Herhangi bir admda sorun yaanrsa (gerektiinde) bir adm geri

    dnlr

    PROBLEM ZME ve ALGORTMALAR(Devam)

    zme Aamalar (Admlar)

  • Problem zmede Algoritma ve Programlama

    Yukarda aklanan Problem zme

    Aamalarndan ikisi dersimizin konusunu

    ile dorudan ilgilidir :

    Algoritma (Tasarm)

    Programlama (Kodlama)

    Bu balklar daha ayrntl olarak inceleyelim

    15

  • PROBLEM ZME ve ALGORTMALAR (Devam)

    Algoritma Trleri

    Algoritma Trleri:

    ki farkl ekilde ifade edilebilirler:

    1. Pseudo (Szde) Kod

    2. Ak Diyagram (Ak emas)

    16

  • 1. Pseudo (Szde) Kod: Bir algoritmann;

    Hem programlama dili kurallar

    Hem de konuma dili kullanlarak

    ortaya koyulmas/tanmlanmasdr.

    Not: yi bir biimde yazlm, Psedo Koddan,

    programlama diline kolaylkla geilebilir.

    PROBLEM ZME ve ALGORTMALAR (Devam)

    Psedo (Szde) Kod

    17

  • Pseudo Kod

    Dorudan konuma dilinde

    Programlama mant altnda

    Eer, iken gibi art kelimeleri ve

    Byk, Eit, Kk ise vb. ifadeler ile

    yazlr.

    Not: Ayn Problem iin ok farkl Psedo Kod Yazlabilir.

    PROBLEM ZME ve ALGORTMALAR (Devam)

    Psedo Kod (Devam)

    18

  • PROBLEM ZME ve ALGORTMALAR (Devam) Psedo Kod (Devam)

    rnek 1: Verilen iki saynn toplamnn bulunarak bu toplamn yazdrlmas algoritmasn psedo (szde) kod

    ile yaznz.

    1. Bala

    2. Birinci Sayy Oku

    3. kinci Sayy Oku

    4. ki Sayy Topla

    5. Toplam yaz

    6. Dur

    19

  • rnek 2: Verilen bir scaklk derecesine gre suyun durumunu belirten bir algoritmay psedo (szde) kod ile

    yaznz.

    Not 1: Programn, scakla gre Su, Buz, Buhar

    eklinde Suyun durumunu gstermesi istenmektedir.

    Not 2: nce programn ne yaptna dir aklama

    mesaj sonra da scaklk deerinin girilmesi iin

    uyar mesaj yazlsn.

    PROBLEM ZME ve ALGORTMALAR (Devam) Psedo Kod (Devam)

    20

  • 1. Bala

    2. Programn grevini aklama mesaj yaz

    3. Kullancnn scakl girmesi iin bir uyar mesaj yaz

    4. Girilen Scakl Oku

    5. Eer Scaklk sfrdan Kk ise

    Durum=Buz

    6. Eer Scaklk 100e Eit yada Byk ise

    Durum= Buhar

    7. Deilse

    Durum =Su

    8. Durum sonucunu Yaz.

    9. Son

    PROBLEM ZME ve ALGORTMALAR (Devam) Psedo Kod (Devam)

    21

  • Programn almas: (140 derece rnei iin)

    Bu Program, scakla gre Su, Buz, Buhar

    eklinde suyun durumunu gsterir. (Aklama mesaj)

    Ltfen derece cinsinden scakl giriniz: 140

    (Uyar mesaj)

    (Girdi)

    BUHAR (kt)

    PROBLEM ZME ve ALGORTMALAR (Devam) Psedo Kod (Devam)

    22

  • rnek 3: Bir Pseudo (szde) Kod yazarak bir

    rencinin dnem sonu not ortalamasn

    hesaplayp rencinin dersten geip

    gemeyeceini tespit edin.

    Not : Not ortalamas eit arlkl 4 nottan olusun ve

    Geme notu 50 olsun.

    PROBLEM ZME ve ALGORTMALAR (Devam) Psedo Kod (Devam)

    23

  • 1. Bala

    2. rencinin dersten ald 4 notu Girin uyar

    mesajn yaz.

    3. Ortalamay hesaplamak zere notlar topla

    ve 4e bl.

    4. Eer Ortalama 50 nin altnda ise

    Baarsz yaz.

    5. Deilse (Aksi halde)

    Baarl yaz.

    6. Son

    24

    PROBLEM ZME ve ALGORTMALAR (Devam) Psedo Kod (Devam)

  • Ayn Psedo Kodu Programlama Diline daha yakn tarzda farkl ekilde tekrar yazalm:

    1. Bala

    2. M1,M2,M3,M4 rencinin Notlarn Girin

    3. ORTALAMA = (M1+M2+M3+M4)/4

    4. Eer (ORTALAMA < 50) ise

    Baarsz yaz

    5. Deilse (Aksi halde)

    Baarl yaz

    6. Son

    25

    PROBLEM ZME ve ALGORTMALAR (Devam) Psedo Kod (Devam)

  • 2. Ak Diyagram (Ak emas):

    Algoritmann grsel/ekilsel olarak ortaya

    koyulmasdr.

    Yaplmas gerekenleri geometrik ekillerden

    oluan sembollerle gsterir.

    PROBLEM ZME ve ALGORTMALAR (Devam)

    Ak Diyagram

    26

  • Ak Diyagram kullanlmas ile

    program Grsellik kazanacandan

    Programn takip edilmesi

    daha da kolaylar.

    PROBLEM ZME ve ALGORTMALAR (Devam)

    Ak Diyagram (Devam)

    27

  • Terminal Sembol:

    Ak Diyagramnda Balang ya da Biti belirtir.

    Giri lemi Sembol:

    Bir Giri ilemini temsil eder.

    lem Sembol:

    Algoritmada bir ilemi temsil eder

    Karar Sembol:

    ki deerin mukayesesi dahil karar ilemini temsil eder

    n Tanml lem Sembol:

    Daha nce tanml bir ilemi temsil eder

    k lemi Sembol:

    Bir k ilemini temsil eder.

    PROBLEM ZME ve ALGORTMALAR (Devam)

    Ak Diyagram (Devam) SEMBOLLER (Sk Kullanlanlar) :

    28

  • rnek 4: Girilen bir uzunlua ait inch (in) deerini santimetreye eviren hem bir Psedo kod yazp hem de bir Ak Diyagram iziniz.

    Not: 1 inch = 2.54 cm dir.

    PROBLEM ZME ve ALGORTMALAR (Devam)

    Ak Diyagram (Devam)

    29

  • Ak Diyagram

    30