Neler Yeni

İf Elif Else sorunu Python

Katılım
19 Ocak 2021
Mesajlar
210
Dahası  
Reaksiyon skoru
43
İsim
Ömer Faruk
if(("ders_notu >= 50") and ("ortalama >= 50")):
print("sinifi geçtiniz")
elif(("ders_notu >= 50") and ("ortalama <= 50")):
print("ortalama yüzünden sinifta kaldiniz")
elif(("ders_notu <= 50") and ("ortalama >= 50")):
print("edebiyatdan kaldiğiniz için sinifta kaldiniz")
else("ders_notu <= 50") and ("ortalama >= 50")):

else de içeriye atmıyor program sebebi nedir hatam nerde ?
 
Katılım
19 Nisan 2020
Mesajlar
163
if(("ders_notu >= 50") and ("ortalama >= 50")):
print("sinifi geçtiniz")
elif(("ders_notu >= 50") and ("ortalama <= 50")):
print("ortalama yüzünden sinifta kaldiniz")
elif(("ders_notu <= 50") and ("ortalama >= 50")):
print("edebiyatdan kaldiğiniz için sinifta kaldiniz")
else("ders_notu <= 50") and ("ortalama >= 50")):

else de içeriye atmıyor program sebebi nedir hatam nerde ?
Mantık hatası var. Else diğer tüm ihtimallerin gerçekleşmediği durumda ne olacağıdır. Bu yüzden içine bir ihtimal koyamazsınız.
Örneğin:
Kod:
if (bu koşul gerçekleşirse)

çıktı

elseif (ilk if'deki koşul gerçekleşmezse bu koşulu dener)

çıktı

elseif (ilk elseif'deki koşul gerçekleşmezse bunu bu koşulu dener)

else // üstteki tüm ihtimaller gerçekleşmezse bu çıktıyı verir.

çıktı
 

Zechion

80+ Silver
Katılım
21 Şubat 2022
Mesajlar
3,431
if(("ders_notu >= 50") and ("ortalama >= 50")):
print("sinifi geçtiniz")
elif(("ders_notu >= 50") and ("ortalama <= 50")):
print("ortalama yüzünden sinifta kaldiniz")
elif(("ders_notu <= 50") and ("ortalama >= 50")):
print("edebiyatdan kaldiğiniz için sinifta kaldiniz")
else("ders_notu <= 50") and ("ortalama >= 50")):

else de içeriye atmıyor program sebebi nedir hatam nerde ?
python bilmiyorum fakat c# ve Javascript gibi dillerde else içerisine bir değer giremezsiniz. Belki de bu sebeple hata alıyorsunuzdur. En sondaki elseyi boş bırakmayı deneyin.
 

naberr

80+ Bronze
Katılım
14 Nisan 2022
Mesajlar
926
Dahası  
Reaksiyon skoru
352
İsim
naber
pyton bilmem c# biliyorum.
baktığımda 50 sayisi her iki koşulu sagliyor esittir atmışsın 49 buyuk isareti atarsan 50 ve uzeri saglanir. 50 kucuktur atarsan 49 ve alti olur. yani esittir attinca alttaki kodda 50 sayisinda sorun verebilir. kucuk esittir yerine sadece kucuk veya buyuk isareti atip dene. illa küçük eşittirli falan yapacaksan <=49 atman gerekiyor 50 dahil olamamalı. >=50 atarsan 50 ve üzeri olur. umarım açıklaya bilmişimdir
en alttaki else de yukardakiyle koşulla ayni hata verir en alttakini sil usttekini else yap. koşul aynı olunca zaten alta inmez
 
Son düzenleme:
Katılım
19 Ocak 2022
Mesajlar
113
Dahası  
Reaksiyon skoru
47
Yaş
20
İsim
İsmail Kaygısız
İlgilendiği Kategoriler
Oyun Tasarım-Kodlama, Programlama Dilleri, Web Tasarım ve Kodlama
if(("ders_notu >= 50") and ("ortalama >= 50")):
print("sinifi geçtiniz")
elif(("ders_notu >= 50") and ("ortalama <= 50")):
print("ortalama yüzünden sinifta kaldiniz")
elif(("ders_notu <= 50") and ("ortalama >= 50")):
print("edebiyatdan kaldiğiniz için sinifta kaldiniz")
else("ders_notu <= 50") and ("ortalama >= 50")):

else de içeriye atmıyor program sebebi nedir hatam nerde ?
İlk olarak if ve elif içinde bulunan koşullu ifadeleri tırnak içinde yazmışsınız.
İkinci olarak else nin içine koşul yazılmaz üstteki koşulların hiçbirisi sağlanmadığında otomatik çalışır.

Python:
if((ders_notu >= 50) and (ortalama >= 50)):
    print("sinifi geçtiniz")

elif((ders_notu >= 50) and (ortalama < 50)):
    print("ortalama yüzünden sinifta kaldiniz")

elif((ders_notu < 50) and (ortalama >= 50)):
    print("edebiyatdan kaldiğiniz için sinifta kaldiniz")

else:
    print("Dersinizin ve ortalamanızın düşüklüğü yüzünden sınıfta kaldınız")

Bu kodu dene
 
Top Bottom