Eğer ifadesi ile geliştirilen uygulamanın akış yönü kontrol şartına uygunluğuna göre belirlenir.
Örnek: Kenar uzunlukları verilen dikdörtgenin alan hesabını yapan programa ait algoritmanın hazırlanması Kenar uzunlukları negatif olarak girildiği durumda veri girişi tekrarlanacaktır.
Çözüm:
Dikdörtgenin kısa kenarı : a
Dikdörtgenin uzun kenarı : b
Dikdörtgenin alanı : Alan
Algoritma
A1 :a değerini gir.
A2 :Eğer a<0 ise A1'e git.
A3 :b değerini gir.
A4 : Eğer b<0 ise A3'e git.
A5 :Alan = a*b
A6 :Alan değerini yaz.
A7 :Bitir.
Yukarıdaki algoritma örneğinde negatif veri girişini anlayabilmek için algoritma adımlarında kontrol şartı eklenmiştir. Buna göre kısa kenar girişinin negatif olup olmadığı A2 de kontrol edilmiş ve girilen sayının negtif olması durumunda veri girişini tekrarlatmak için algoritma akışı A1 e yönlendirilmiştir.
Benzer durum uzun kenar içinde eklenmiştir. Burada uzun kenar girişinden sonra programın A1 e değil A3 e yönlendirildiğine dikkat ediniz.
Düşün ! Yukarıdaki örnekte algoritma A4 de A3 yerine A1 e yönlendirilseydi ne olurdu ?
Örnek: Birden 10 a kadar olan sayıları yazdıran algoritma örneği
Çözüm:
sayaç için say
A1 :say = 0
A2 :say=say+1
A3 :say değerini yaz
A4 :Eğer say <10 ise A2'ye git.
A5 :Bitir.
Yukarıdaki algoritma örneğinde 1 den başlarayarak 10 a kadar olan sayıları yazdırmaktadır. Örnek incelendiğinde başlangıçta değeri 1 olarak belirlenen say değişkeninin değeri her defasında bir arttırılarak tekrar yazdırma işlemi yaptırılıyor. Yani A2 ile A4 satırları arasında koşula bağlı olarak işlemler tekrarlanıyor. Koşul (say<10) s olduğu sürece say değeri bir arttırılıyor ve yeni değeri yazdırılıyor enson aşamada say değeri 10 olduğunda yazdırma işlemi yapıldıktan sonra koşul sağlanmadığı için algoritma sonlanıyor.
Örnek: Beş sayının toplamını ve ortalamasını veren programa ait algoritmanın oluşturulması
Çözüm:
Toplam adı için Top
Ortalama adı için Ort
Girilen sayılar için X
Arttırma için Sayac kullanılırsa
A1 :Top = 0, Sayac = 0
A2 :X değerini gir.
A3 :Top= Top+X
A4 : Sayac = Sayac +1
A5 :Eğer Sayac <5 ise A2'ye git.
A6 :Ort= Top/5
A7 :Top ve Ort değerlerini yaz.
A8 :Bitir.
Algoritma Çalışma Soruları
- Girilen sayının pozitif, negatif veya sıfıra eşit olduğunu gösteren algoritmayı hazırlayınız.
- Girilen sayının faktöriyelini hesaplayan algoritmayı hazırlayınız.
- Girilen üç sayıdan en büyüğünü bulup ekrana yazan algoritmayı hazırlayınız.
- Bir öğrenciye ait vize ve final notlarının ortalamasını hesaplayan ve ortalamaya göre ekrana “Geçti” “Kaldı” yazan algoritmayı hazırlayınız (Not: Ortalama hesaplanırken vizenin %40, finalin %60'ı alınacak, geçme notu 45'dir.) .
- Bir komisyoncu sattığı mallardan fiyatı 50 TL'ye kadar olanlardan %3, daha fazla olanlardan ise %2 komisyon almaktadır. Klavyeden girilen 5 malın komisyonlarını bularak toplam komisyonu hesaplayan algoritmayı hazırlayınız.