Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

BPR151 ALGORİTMA VE PROGRAMLAMA - I

Benzer bir sunumlar


... konulu sunumlar: "BPR151 ALGORİTMA VE PROGRAMLAMA - I"— Sunum transkripti:

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

2 Bugünkü Konular Döngüsel Akış Diyagramları Örnekleri
Klavyeden girilen bir sürü sayının toplamı an ifadesini hesaplama 1’den N sayısına kadar sayıların toplamı 1’den N sayısına kadar sayıların karelerini toplama Girilen bir sayının asal sayı olup olmadığını anlama 1’den N sayısına kadar asal olan sayıları ekrana yazma Girilen bir sayının Mükemmel sayı olup olmadığını anlama

3 Bir dizi sayının toplamını nasıl hesaplarız?
Klavyeden girilecek bir dizi sayının toplamını hesaplayacak bir algoritma yazalım. Input Bir sürü sayı (kaç tane olduğunu bilmiyoruz) -1 sayı girişini bitirecek Output Girilen sayıların toplamı

4 Bir dizi sayının toplamını hesaplama: Algoritma
Başla Toplamı 0 a eşitle Kullanıcıdan sayı girmesini veya -1 ile durmasını iste. Klavyeden girilen sayıyı oku Eğer sayı -1 değilse 4.1. toplam = toplam + sayı adıma git Toplamı yazdır. Bitir

5 Bir dizi sayının toplamını hesaplama: Akış Diyagramı
Bir sayı gir veya -1 ile bitir Toplam sayı = -1? E sayı toplam = 0 toplam = toplam + sayı H Başla Bitir Kullanıcı -1 girene kadar 3, 4 ve 5. basamakların sürekli çalışmasını istiyoruz. Bunun anlamı; 3, 4 ve 5. adımlar bir döngü içinde çalışacaktır

6 an yi nasıl hesaplarız? “a” gerçek sayı, “n” tam sayı ve n>=0 olsun. Örnek, 35 i hesapla. 35 = 3*3*3*3*3 sonuç değişkeni alalım ve ilk değeri 1 olsun. sonuç = 1 (a0=1) a sayısını kendisiyle çarp ve her çarpma işleminde bir say. Sayacın ilk değeri = 0 Sayaç “n” olunca “a” sayısını “n” defa kendisiyle çarpmışız demektir.

7 an Hesaplama Algoritması
Başla Kullanıcıdan “a” ve “n” girmelerini iste Sayacı 0’a eşitle Sonucu 1'e eşitle Eğer (sayaç < n) ise sonuç = sonuç * a sayaç = sayaç +1 Adıma git Sonucu yazdır Bitir

8 an Hesaplama Akış Diyagramı
Açıkça “sayaç” “n” değerine ulaşana kadar 5.1 ve 5.2 adımlarının tekrarlamalarını istiyoruz. Bunun anlamı; 5.1 ve 5.2 basamaklarını koşul sağlandıkça bir döngü içinde çalışmalarını istiyoruz. sayaç = 0 Başla sonuç = 1 sayaç < n? an hesaplamak için “ a” ve “n” değerlerini giriniz sonucu yazdır H Bitir E sonuç = sonuç * a Sayaç = sayaç + 1

9 Not Döngü yapılarında döngü kontrolünü sağlayan koşul yapısı döngünün başında veya sonunda olabilir. Bu kurulan mantığa göre tasarımcıya kalmıştır koşul E H ifade1 ifade2 ... koşul E H ifade1 ifade2 ... Koşul Başta Koşul Sonda

10 1+2+3+..+N işlemini hesaplama
Başla Kullanıcıdan “n” sayısını iste sayaç = 1 toplam = 0 Eğer (sayaç <= n) ise toplam = toplam + sayaç sayaç = sayaç + 1; Adıma git Toplamı yazdır Bitir sayaç = 1 Başla toplam = 0 sayaç <= n? n toplam H Bitir E toplam = toplam + sayaç sayaç = sayaç + 1

11 1²+2²+3²+..+N² işlemini hesaplama
Başla Kullanıcıdan “n” sayısını iste sayaç = 1 toplam = 0 Eğer (sayaç <= n) ise toplam = toplam + (sayaç²) sayaç = sayaç + 1; Adıma git Toplamı yazdır Bitir sayaç = 1 Başla toplam = 0 sayaç <= n? n toplam H Bitir E toplam = toplam + (sayaç*sayaç) sayaç = sayaç + 1

12 Girilen N sayısının asal olup olmadığını kontrol etme
Kendisi ve birden başka herhangi bir sayıya bölünemeyen sayılara asal sayı denir. Örnek: 2,3,5,7,11,17,19,23,29,31,… Girilen bir sayının asal olup olmadığını kontrol etmek için: 2’den başlayıp kendisinden küçük bütün sayılara bölmeye çalışırız. Eğer herhangi birisine tam bölünürse sayı asal değildir. Eğer hiç birine tam bölünemezse sayı asaldır. Not: eğer m sayısı n sayısına tam bölünüyorsa m mod n = 0 olur. Yani m sayısının n sayısına bölümünden kalan 0’dır.

13 Girilen N sayısının asal olup olmadığını kontrol etme
sayaç = 2 Başla N mod sayaç = 0 ? N N sayısı asal değildir! H Bitir E sayaç = sayaç + 1 sayaç < N? asal sayıdır Başla Kullanıcıdan “N” sayısını iste sayaç = 2 Eğer N mod sayaç = 0 N sayısı asal değildir adıma git. Sayaç = sayaç + 1 Eğer (sayaç < N) ise adıma git N sayısı asal sayıdır. Bitir.

14 Girilen N sayısına kadar asal olan bütün sayıları ekrana yazdırma
Başla Kullanıcıdan “N” sayısını iste sayı = 2 sayaç = 2 Eğer (sayı mod sayaç = 0) ise sayı asal değildir adıma git. Sayaç = sayaç + 1 Eğer (sayaç < sayı) ise adıma git m sayısı asal sayıdır sayı = sayı +1 Eğer (sayı <= N) ise adıma git Bitir. sayaç = 2 Başla sayı mod sayaç = 0 ? N sayı asal değildir! H Bitir E sayaç = sayaç + 1 sayaç < sayı? sayı asaldır sayı = 2 sayı = sayı + 1 sayı < N ?

15 Girilen N sayısının Mükemmel sayı olup olmadığını kontrol etme
kendisi hariç pozitif tam bölenlerinin toplamı kendisine eşit olan sayılara mükemmel sayılar denir. Örnek: 6  tam bölenleri (1,2,3  = 6) 28  tam bölenleri (1,2,4,7,14  = 28 ) Girilen bir sayının mükemmel olup olmadığını kontrol etmek için: 1’den başlayıp kendisinden küçük bütün sayılara bölmeye çalışırız. Eğer herhangi birisine tam bölünürse bunu toplama ekleriz. Sonuçta toplam kendisine eşit olmuş ise sayı mükemmel sayıdır.

16 Girilen N sayısının mükemmel sayı olup olmadığını kontrol etme
Başla Kullanıcıdan “N” sayısını iste sayaç = 1, Toplam = 0 Eğer N mod sayaç = 0 Toplam = Toplam + sayaç Sayaç = sayaç + 1 Eğer (sayaç < N) ise adıma git Eğer(N = Toplam) ise N sayısı mükemmel sayıdır. Değilse N sayısı Mükemmel değildir. Bitir. sayaç = 1, toplam = 0 Başla N mod sayaç = 0 ? N Toplam = Toplam + sayaç H Bitir E sayaç = sayaç + 1 sayaç < N? N sayısı Mükemmel sayıdır N = Toplam ?

17 Araştırma Ödevi-1 Girilen N sayısına kadar mükemmel olan sayıları bulan bir algoritma yazınız, akış diyagramını çıkarınız.

18 Araştırma Ödevi-2 Klavyeden girilen n tane sayının (kaç tene olduğu bilinmiyor, 0 girilene kadar sayı girişi yapılıyor) toplamını, çarpımını, ortalamasını, en büyüğünü ve en küçüğünü bulan bir algoritma yazınız. Akış diyagramını oluşturunuz.

19 Araştırma Ödevi-3 h yüksekliğinden bırakılan bir top her yere çarptığında bir önceki yüksekliğin üçte biri kadar sıçrayabiliyor. Son sıçrama yüksekliği 10 santimetreden küçük ise bir daha sıçramamaktadır. Buna göre klavyeden girilen h cm yüksekliğinden bırakılan bir topun kaç defa sıçrayacağını hesaplayan bir algoritma yazınız. Akış diyagramını hazırlayınız.

20 Araştırma Ödevi-4 Bir kümesteki tavşanların sayısının her ay önceki iki aydaki tavşanların sayısının toplamına eşit olduğu varsayılıyor. Örneğin 5. aydaki tavşanların sayısı 3. ve 4. aydaki tavşanların sayılarının toplamına eşit oluyor. Aşağıdaki listede tavşanların ilk sayısı ile her aydaki tavşan sayıları verilmiştir. | Ay | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | ... | Sayı| 2 | 3 | 5 | 8 | 13 | 21 | 34 | 55 | ... Buna göre klavyeden girilen n. ayda tavşan sayısının kaç olacağını hesaplayan bir algoritma yazınız. Akış diyagramını oluşturunuz.

21 Dinlediğiniz için teşekkürler…
Öğr. Gör. Bayram AKGÜL


"BPR151 ALGORİTMA VE PROGRAMLAMA - I" indir ppt

Benzer bir sunumlar


Google Reklamları