Genel Tekrar & Ödev Çözümleri

Download Report

Transcript Genel Tekrar & Ödev Çözümleri

BPR151 ALGORİTMA VE
PROGRAMLAMA - I
Öğr. Gör. Bayram AKGÜL
[email protected]
http://bmyo.bartin.edu.tr/akgul
Bugünkü Konular
• Sınav Öncesi Konuların özetlenmesi
• Bu güne kadarki ödev çözümleri
2
Ödev-1
• Melemen hazırlama algoritması yazınız.
– Kullanılacak malzemeye göre birçok hazırlama tekniği olabilir 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
BAŞLA
Domates ve biberleri yıka
Domates, biber ve soğanları doğra
Tavaya yağ koy
Ocağı aç.
Tavayı ocağa koy.
Soğanları tavaya koy.
Renginin değişmesini bekle
Biberleri ekle
Kızarınca domatesleri ekle.
Tuz ekle
Domateslerin pişmesini bekle.
Yumurtaları kır ve tavaya ekle.
3-5 dakika bekle.
Pişti, servise hazır.
BİTİR
3
Ödev-2
• Kullanıcıdan alınan beş sayının
–
–
–
–
–
en küçük olanını
en büyük olanını,
toplamlarını,
çarpımlarını ve
ortalamalarını
bulan bir algoritma yazınız, akış
diyagramını hazırlayınız.
4
Ödev-2 – Algoritma
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
BAŞLA
S1,S2,S3,S4,S5
K = S1
EĞER S2<K ? K=S2
EĞER S3<K ? K=S3
EĞER S4<K ? K=S4
EĞER S5<K ? K=S5
B = S1
EĞER S2>B ? B=S2
EĞER S3>B ? B=S3
EĞER S4>B ? B=S4
EĞER S5>B ? B=S5
TOPLAM = S1+S2+S3+S4+S5
ÇARPIM = S1*S2*S3*S4*S5
ORT = TOPLAM / 5
SONUÇLARI EKRANA YAZ
BİTİR
5
Ödev-2 – Akış Diyagramı
6
Ödev-3 (1)
• Kullanıcıdan istenen 3 tane sayıdan;
– en az biri üçün katı ise sayıların karesini çarpan,
– değilse; en az biri çift ise sayıları çarpan
– diğer durumda sayıları toplayan
bir algoritma yazınız, akış diyagramını
oluşturunuz.
7
Ödev 3(1) - Algoritma
1.
2.
3.
4.
5.
6.
7.
8.
BAŞLA
S1,S2,S3
SONUÇ = 0
EĞER S1 mod 3 = 0 VEYA S2 mod 3 = 0 VEYA S3 mod 3 = 0
4.1 SONUÇ = (S1*S1 * S2*S2 * S3*S3)
DEĞİLSE EĞER S1 mod 2 = 0 VEYA S2 mod 2 = 0 VEYA S3 mod 2 = 0
5.1 SONUÇ = (S1* S2 * S3)
DEĞİLSE SONUÇ = S1 + S2 + S3
SONUCU EKRANA YAZDIR
BİTİR
8
Ödev-3(1) – Akış Diyagramı
9
Ödev-3 (2)
• 1’den kullanıcıdan istenen N sayısına kadar;
– çift olanların toplamını,
– 3’ün katı olanlarının çarpımını,
– hem 2’nin hem de 3’ün katı olanlarının kareleri
toplamını
hesaplayıp ekrana yazdıran bir algoritma
yazınız, akış diyagramını oluşturunuz.
10
Ödev 3(2) - Algoritma
1.
2.
3.
4.
5.
BAŞLA
Kullanıcıdan N sayısını iste
Toplam = 0, Çarpım = 1, KToplam = 0, Sayaç = 0
Sayaç = Sayaç+1
EĞER Sayaç mod 2 = 0 ise
5.1 Toplam += Sayaç
6. EĞER Sayaç mod 3 = 0 ise
6.1 Çarpım *= Sayaç
7. EĞER Sayaç mod 2 = 0 VE Sayaç mod 3 = 0 ise
7.1 KToplam += (Sayaç*Sayaç)
8. EĞER Sayaç < N ise 4. Adıma git
9. Toplam, Çarpım, KToplam Ekrana yazdır
10. BİTİR
11
Ödev-3(2) – Akış Diyagramı
12
Ödev 4(1)
• Girilen N sayısına kadar mükemmel olan
sayıları bulan bir algoritma yazınız, akış
diyagramını çıkarınız.
13
Ödev 4(1) Algoritma
1.
2.
3.
4.
5.
6.
Başla
Kullanıcıdan “N” sayısını iste
Sayı=1
Sayı++
sayaç = 1, Toplam = 0
Eğer Sayı mod sayaç = 0
6.1. Toplam = Toplam + sayaç
7.
8.
Sayaç = sayaç + 1
Eğer (sayaç < Sayı) ise
8. 1. 6. adıma git
9.
Eğer(Sayı = Toplam) ise
Sayı mükemmel sayıdır.
10. EĞER Sayı < N ise 4. Adıma Git
11. Bitir.
14
Ödev 4(1)
Akış
Diyagramı
15
Ödev 4(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.
16
Ödev 4(2) - Algoritma
1.
2.
BAŞLA
Toplam = 0, Çarpım = 1,
Ortalama = 0, Sayaç = 0
Büyük = MIN, Küçük = MAX
3. Bir Sayı Gir
4. EĞER Sayı = 0 ise
4.1 Sonuçları Ekrana yaz
4.2. BİTİR
5. EĞER Sayı > Büyük ise Büyük = Sayı
6. EĞER Sayı < Küçük ise Küçük = Sayı
7. Sayaç = Sayaç+1
8. Toplam += Sayı
9. Çarpım *= Sayı
10. Ortalama = Toplam / Sayaç
11. 3. Adıma Git
17
Ödev-4(2) – Akış Diyagramı
18
Ödev 4(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ı ve toplam alacağı yolu
hesaplayan bir algoritma yazınız. Akış
diyagramını hazırlayınız.
19
Ödev 4(3) – Algoritma & Akış Diyagramı
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
BAŞLA
Başlangıçtaki h yüksekliğini al (metre)
h = h * 100
Sıçrama =0
Yol = 0
Yol +=h
H = h/3
Yol +=h
Sıçrama ++
EĞER H > 10 cm ise 6. Adıma git
Sıçrama ve Yol Ekrana yaz
Bitir
20
Ödev 4(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
Ödev 4(4) – Algoritma & Akış Diyagramı
1.
2.
3.
4.
5.
6.
7.
8.
9.
BAŞLA
N. ayı kullanıcıdan iste
A = 2, B = 3
Ay = 2
C=A+B
Ay++
Ay < N
7.1 A = B
7.2 B = C
7.3 5. Adıma git
C Ekrana yaz
BİTİR
22
DINLEDIĞINIZ IÇIN
TEŞEKKÜRLER…
Öğr. Gör. Bayram AKGÜL
23