Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

BPR151 ALGORİTMA VE PROGRAMLAMA - I Öğr. Gör. Bayram AKGÜL

Benzer bir sunumlar


... konulu sunumlar: "BPR151 ALGORİTMA VE PROGRAMLAMA - I Öğr. Gör. Bayram AKGÜL"— Sunum transkripti:

1 BPR151 ALGORİTMA VE PROGRAMLAMA - I Öğr. Gör. Bayram AKGÜL

2 Algoritmalar & Akış Şemaları -Avantajları -Türleri -Örnekleri

3 Algoritma/Akış Şeması Avantajları Program yazmayı kolaylaştırır. Hatalı kodlama oranını azaltır. Program yazımı için geçen süreyi kısaltır. İşlem akışını bir şekilde gösterdiğinden program kontrolünü kolaylaştırır. Sonradan yapılacak düzenlemelerde kolaylıklar sağlar. Öğr. Gör. Bayram AKGÜL3

4 4 Akış Şemaları Kontrol akışını ifade etmek için kullanılan şekilleri hatırlayalım: Paralel kenar girdi adımlarını gösterir Deltoid koşul durumunda karar verme adımını gösterir Dikdörtgenler işlem adımlarını gösterir Çember bağlantı noktasını gösterir Oklar Akış yönünü gösterir Başla Algoritmanın başlangıç ve bitişini gösterir Bitir Öğr. Gör. Bayram AKGÜL Altı yamuk dörtgenler çıktı adımlarını gösterir

5 Akış Şeması Türleri Doğrusal Akış Şemaları Mantıksal Akış Şemaları Döngüsel Akış Şemaları Öğr. Gör. Bayram AKGÜL5

6 Doğrusal Akış Şemaları Her işlemin doğrusal olarak yapıldığı akış şemalarıdır. Her işlem sırasıyla çalışır ve bir işlem diğerini takip eder. Koşul veya tekrarlama gerçekleşmez. Örnek: –Girilen iki sayının toplamını bulma –Üç sayının ortalamasını bulma –Çemberin çevresini ve alanını hesaplama Öğr. Gör. Bayram AKGÜL6

7 Doğrusal Akış Şemaları Örnek:1 Kullanıcıdan alınan iki sayının toplamını hesaplama: 1.Başla 2.Sayi1 ve Sayi2’yi oku 3.Toplam=Sayi1+Sayi2 4.Toplamı ekrana yaz 5.Bitir Öğr. Gör. Bayram AKGÜL7 Basla Sayi1, Sayi2 Toplam=Sayi1+Sayi2 Toplam Bitir

8 Doğrusal Akış Şemaları Örnek:2 Kullanıcıdan alınan üç sayının ortalamasını hesaplama: 1.Başla 2.S1,S2 ve S3’ü oku 3.Toplam=S1+S2+S3 4.Ortalama=Toplam/3 5.Ortalama ekrana yaz 6.Bitir Öğr. Gör. Bayram AKGÜL8 Başla S1,S2,S3 Toplam=S1+S2+S3 Ort=Toplam/3 Ortalama Bitir

9 Doğrusal Akış Şemaları Örnek:3 Çemberin Çevresini ve Alanını Hesaplama: 1.Başla 2.Çemberin yarıçapını oku (r) 3.Çevre=2*PI*r 4.Alan = PI*r*r 5.Çevre ve alanı ekrana Yaz 6.Bitir Öğr. Gör. Bayram AKGÜL9 Başla r Çevre=2*PI*r Alan = PI * r*r Çevre, Alan Bitir

10 Uyarı: kullanıcı çemberin yarı çapı için negatif bir değer girerse ne olur? –Negatif alan, çevre olabilir mi? Ne Yapmalıyız? –Kontrol Mantıksal Kontrol Öğr. Gör. Bayram AKGÜL10 Uyarı:

11 Mantıksal Akış Şemaları Akışın bazı kurallara/koşullara göre yönünün değiştiği akış şemalarıdır. Koşulun durumuna göre bazı adımlar gerçekleşmez. Örnek: –Girilen iki sayıdan küçük olanını bulma –Üç sayının en küçüğünü bulma –Girilen bir sayının tek veya çift olduğunu anlama –Girilen sayının N sayısının katı olup olmadığını anlama. Öğr. Gör. Bayram AKGÜL11

12 Mantıksal Akış Şemaları Örnek:1 Kullanıcıdan alınan iki sayıdan küçük olanını bulma: 1.Başla 2.Sayi1 ve Sayi2’yi oku 3.Eğer (Sayi1

13 Mantıksal Akış Şemaları Örnek:2 Kullanıcıdan alınan 3 sayıdan en küçük olanını bulma 1.sayı1, sayı2, ve sayı3’ü oku 2.küçük = sayı1; (sayı1’in en küçük olduğunu farz edelim) 3.eğer (sayı2 < küçük) 3.1 küçük = sayı2; 4.eğer (sayı3 < küçük) 4.1. küçük = sayı3; 5.küçük sayısını ekrana yaz Öğr. Gör. Bayram AKGÜL13 sayı1, sayı2, sayı3’ü oku sayı2 < küçük ? Başla hayır küçük = sayı1 küçük = sayı2 evet sayı3 < küçük ? hayır küçük = sayı3 evet küçük sayısını ekrana yazdır Bitir

14 Mantıksal Akış Şemaları Örnek:3 Girilen bir sayının tek veya çift olduğunu anlama: 1.Başla 2.Sayı’yı oku 3.Eğer (Sayı mod 2 = 0) 3.1 Ekrana yaz "sayı çift"; 4.Değilse 4.1. Ekrana yaz "sayı tek"; 5.Bitir Öğr. Gör. Bayram AKGÜL14 Basla Sayı Sayı mod 2 = 0 ? Bitir Sayı tek Sayı çift E H

15 Mantıksal Akış Şemaları Örnek:4 Girilen bir sayının N sayısının katı olup olmadığını anlama: 1.Başla 2.Sayı’yı ve N ‘yi oku 3.Eğer (Sayı mod N = 0) 3.1 Ekrana yaz: "sayı N sayısının katı" 4.Değilse 4.1. Ekrana yaz: "sayı N sayısının katı değil!"; 5.Bitir Öğr. Gör. Bayram AKGÜL15 Basla Sayı, N Sayı mod N = 0 ? Bitir Girilen sayı N sayısının katı değil! Girilen sayı N sayısının katı E H

16 Birden Fazla mantıksal ifadeyi birleştirme: Mantıksal ifadeleri birleştirmek için VE, VEYA operatörleri kullanılabilir. –Örnek: –bir sayının hem 2’nin hem de 3’ün katı olduğunu anlamak için: Eğer (sayı mod 2 = 0 VE sayı mod 3 = 0) ise … –Bir sayının ikinin katı veya 3’ün katı olduğunu anlamak için: Eğer (sayı mod 2 = 0 VEYA sayı mod 3 = 0) ise … Bir ifadenin tersini almak için DEĞİL operatörü kullanılabilir. Öğr. Gör. Bayram AKGÜL16

17 Mantıksal Akış Şemaları Örnek:5 Girilen bir sayının 3’ün ve 7’nin katı olup olmadığını anlama: 1.Başla 2.Sayı’yı oku 3.Eğer (Sayi mod 3 = 0) 3.1. Eğer (Sayı mod 7 = 0) ise Ekrana yaz: "sayı 3’ün ve 7’nin katı " 3.2. Değilse Ekrana yaz: "sayı 7’nin katı değil " 4.Değilse 4.1. Ekrana yaz: "sayı 3’ün katı değil!"; 5.Bitir Öğr. Gör. Bayram AKGÜL17 Başla Sayı Sayı mod 3 = 0 ? Bitir Girilen sayı 3’ün ve 7’nin katı Girilen sayı 3’ün katı değil HE Sayı mod 7 = 0 ? E Girilen sayı 7’nin katı değil H

18 Mantıksal Akış Şemaları Örnek:5:2. yöntem Girilen bir sayının 3’ün ve 7’nin katı olup olmadığını anlama -2. yöntem: 1.Başla 2.Sayı’yı oku 3.Eğer (Sayi mod 3 = 0) VE (Sayı mod 7 = 0) ise 3.1 Ekrana yaz: "sayı 3’ün ve 7’nin katı" 4.Değilse 4.1. Ekrana yaz: "sayı 3’ün ve 7’nin katı değil!"; 5.Bitir Öğr. Gör. Bayram AKGÜL18 Başla Sayı Sayı mod 3 = 0 ? VE Sayı mod 7 = 0 ? Bitir Girilen sayı 3’ün ve 7’nin katı Girilen sayı 3’ün VE 7’nin katı değil HE

19 Döngüsel Akış Şemaları Bir çeşit mantıksal akış şemasıdır. Koşula göre bazı adımların tekrarlandığı akış şemalarıdır. Örnek: –İsmini ekrana 100 defa yazdırma –1’den N sayısına kadar sayıları toplama –1’den N sayısına kadar M’nin katları olan sayıları toplama –Bir sayının faktöriyelini hesaplama Öğr. Gör. Bayram AKGÜL19

20 Döngüsel Akış Şemaları Örnek:1 İsmini ekrana 100 defa yazdırma 1.Başla 2.Sayaç = 0 3.Sayaç = Sayaç Ekrana yaz «Ali KARA» 5.Eğer (Sayaç < 100) ise Adıma git 6.Bitir. Öğr. Gör. Bayram AKGÜL20 Basla Sayaç = 0 sayaç < 100 ? Bitir Ali KARA H E sayaç = sayaç + 1 Not: 3. ve 4. adımları değiştirmek sonucu etkilemez.

21 Döngüsel Akış Şemaları Örnek:2 1’den N sayısına kadar olan sayıların toplamını ekrana yazdırma 1.Başla 2.N sayısını kullanıcıdan iste 3.Sayaç = 0, Toplam = 0 4.Sayaç = Sayaç Toplam = Toplam + Sayaç 6.Eğer (Sayaç < N) ise Adıma git 7.Toplamı Ekrana yaz 8.Bitir. Öğr. Gör. Bayram AKGÜL21 Basla Sayaç = 0, Toplam = 0 sayaç < N ? Bitir Toplam H E sayaç = sayaç + 1 Toplam = Toplam + sayaç N

22 Döngüsel Akış Şemaları Örnek:3 1’den N sayısına kadar M’nin katları olan sayıların toplamını ekrana yazdırma 1.Başla 2.N ve M sayılarını kullanıcıdan iste 3.Sayaç = 0, Toplam = 0 4.Sayaç = Sayaç Eğer (Sayaç mod M = 0) ise 5.1. Toplam = Toplam + Sayaç 6.Eğer (Sayaç < N) ise Adıma git 7.Toplamı Ekrana yaz 8.Bitir. Öğr. Gör. Bayram AKGÜL22 Basla Sayaç = 0, Toplam = 0 sayaç < N ? Bitir Toplam H E sayaç = sayaç + 1 N, M sayaç mod M = 0 ? Toplam = Toplam + sayaç E H

23 Döngüsel Akış Şemaları Örnek:4 Girilen N sayının faktöriyelini ekrana yazdırma (ör: 5! = 5*4*3*2*1 = 120) 1.Başla 2.N sayısını kullanıcıdan iste 3.Sayaç = 0, Faktöriyel = 1 4.Sayaç = Sayaç Faktöriyel = Faktöriyel * Sayaç 6.Eğer (Sayaç < N) ise Adıma git 7.Faktöriyeli Ekrana yaz 8.Bitir. Öğr. Gör. Bayram AKGÜL23 Basla Sayaç = 0, Faktöriyel = 1 sayaç < N ? Bitir Faktöriyel H E sayaç = sayaç + 1 Faktöriyel = Faktöriyel * sayaç N

24 Döngüsel Akış Şemaları Örnek:5 Çemberin Çevresini ve Alanını Hesaplama: (kullanıcının yarı çapı 0’dan büyük girdiği garanti ediliyor) 1.Başla 2.Çemberin yarıçapını oku (r) 3.Eğer (r <= 0) 2.1. Ekrana Yaz: «r değeri 0’dan büyük olmalı» Adıma dön 4.Çevre=2*PI*r 5.Alan = PI*r*r 6.Çevre ve alanı ekrana Yaz 7.Dur Öğr. Gör. Bayram AKGÜL24 Başla r Çevre=2*PI*r Alan = PI * r*r Çevre, Alan Bitir r <= 0 ? r değeri 0’dan büyük olmalı E H

25 DINLEDIĞINIZ IÇIN TEŞEKKÜRLER… Öğr. Gör. Bayram AKGÜL25


"BPR151 ALGORİTMA VE PROGRAMLAMA - I Öğr. Gör. Bayram AKGÜL" indir ppt

Benzer bir sunumlar


Google Reklamları