Python Eğitimleri : 14.Ders
Herkese Merhabaa,
Önceki yazılarımda koşullu durumları öğrenmiştik ve bu yazımda da koşullu durumların son kısmını öğreneceğiz. if – else bloklarını görmüştük. Şimdi if – elif – else bloklarını göreceğiz.
if – elif – else
Bir durum sadece bir koşula bağlı olduğu zaman if ve else bloklarını kullanarak kontrol edebiliyorduk. Ancak birden fazla koşula bağlı olunan durumlarda karşımıza çıkabilir. Bu durumlarda olayın içine elif blokları da giriyor. If koşulundan sonra kontrol etmemiz gereken örneğin 4 koşul varsa hepsi için elif bloklarını kullanabiliriz. Aşağıda 2 farklı elif bloğu kullandık. Bu, duruma göre daha fazla da olabilirdi. Kullanımı şöyledir:
if (koşul):
- Bir girinti boşluk ile if bloğunun altına gerekli kodları yazarız.
** if bloğunda ki koşul sağlanmadı ve bir sonraki koşul bloğu olan elif bloğuna geçti **
elif (başka bir koşul):
- Bir girinti boşluk ile elif bloğunun altına gerekli kodları yazarız.
** ilk elif bloğunda ki koşul sağlanmadı ve bir sonraki elif bloğuna geçti **
elif (başka bir koşul):
- Bir girinti boşluk ile elif bloğunun altına gerekli kodları yazarız.
** ikinci elif bloğunda ki koşul sağlanmadı ve son durum olan else bloğuna geçti **
else:
- Bir girinti boşluk ile else bloğunun altına gerekli kodları yazarız ve kontrol sona erer.
if – elif- else bloklarının kullanımı böyledir. Şimdi örnek yapalım.
Bu örnekte 2 vize ve 1 finali olan bir öğrencinin ortalamasını hesaplayan ve ortalamasına karşılık gelen harf notunu gösterip geçme durumunu belirleyen program yazalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
print("-*-*-*-*-*HARF NOTU HESAPLAMA SİSTEMİNE HOŞGELDİNİZ*-*-*-*-*-") vize1 = int(input("1.Vize notunuz: ")) vize2 = int(input("2.Vize notunuz: ")) final = int(input("Final notunuz: ")) ort = (vize1*0.30) + (vize2*0.30) + (final*0.40) print("Not ortalamanız: ",ort) if (ort >= 90) : print("Harf notunuz: AA\nTebrikler! Dersi geçtiniz.") elif (ort >= 80) : print("Harf notunuz: BA\nTebrikler! Dersi geçtiniz.") elif (ort >= 70) : print("Harf notunuz: BB\nTebrikler! Dersi geçtiniz.") elif (ort >= 62) : print("Harf notunuz: CB\nTebrikler! Dersi geçtiniz.") elif (ort >= 55) : print("Harf notunuz: CC\nTebrikler! Dersi geçtiniz.") elif (ort >= 50) : print("Harf notunuz: DC\nTebrikler! Dersi geçtiniz.") elif (ort >= 35) : print("Harf notunuz: DD\nTebrikler! Koşullu olarak dersi geçtiniz.") else : print("Harf notunuz: FF\nÜzgünüz! Dersten kaldınız.") |
Kullanıcıdan integer tipinde vize ve final notlarını aldık. Vizeler %30, final %40 oranında ortalamaya etki ettiğini düşünerek ortalamamızı hesapladık. Burada koşulumuz ortalamadır. Ortalama üzerinden harf notumuzu ve başarı durumumuzu görüyoruz.
Bu örneğimizin çıktısı:
Bir örnek daha yapalım.
Bu örneğimizde kullanıcıdan yapmak istediği işlemi sorup, buna göre işleyen hesap makinesi yapalım.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
print("İşlem 1: Toplama\nİşlem 2: Çıkarma\nİşlem 3: Çarpma\nİşlem 4: Bölme") print("Yapmak istediğiniz işlemi seçin.") islem = int(input("İşlem no: ")) sayi1 = int(input("1.sayıyı giriniz: ")) sayi2 = int(input("2.sayıyı giriniz: ")) if islem >= 5: print("Yanlış işlem seçimi yaptınız!") elif islem == 1: print("Toplama yapılıyor...") print("Sonuç: ",sayi1 + sayi2) elif islem == 2: print("Çıkarma yapılıyor...") print("Sonuç: ",sayi1 - sayi2) elif islem == 3: print("Çarpma yapılıyor...") print("Sonuç: ",sayi1 * sayi2) elif islem == 4: print("Bölme yapılıyor...") print("Sonuç: ",sayi1 / sayi2) |
Bu kodda birçok koşul durumu olduğundan if – elif – else kullanarak çözdük.
Bu kodumuzun çıktısı
1.Toplama işlemi yapılırsa:
2. Çıkarma işlemi yapılırsa:
3. Çarpma işlemi yapılırsa:
4. Bölme işlemi yapılırsa:
Sonuçlar böyledir. Aklınıza takılan bir durum olduğunda mutlaka mail atıp sorun. Bir sonra ki yazımda görüşmek üzere, hoşça kalın.