Şimdi Ara

Python Hesap Makinesi Sorunu çözemedim.

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
8
Cevap
0
Favori
354
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar Python öğrenmeye çalışıyorum if-elif-else komutları ile ilgili problemlerim var.Öncelikle yapmaya çalıştığım programı size anlatayım:
    Şöyle.Bir okul var ve 2 sınav ve ders içi ekinliklerden elde edinlen puanların ortalaması size not ortalamasını veriyor.Ben önce bu durum ile ilgili bilgi verdim burada problem yok.Sonra;
    not1 = float(input("Lütfen 1.sınavınızı giriniz")
    not2 ve not3 içinde aynı şeyler geçerli.

    Sonra ortalama hesaplaması için şunları yazdım:
    not4 = float(input((not1 + not2 + not3)/3))

    Buraya kadar sorunsuz bir şekilde çalışıyor kodlar,asıl mesele bundan sonra başlıyor.Yapmak istediğim eğer ortalama 50 ve üzerinde ise başarılı,değilse başarısız yazması.Kodlar şöyle:

    if note >= 50
    print("Başarılı")
    else:
    print("Başarısız")

    Hesaplama işine kadar sorunsuz çalışıyor lakin if else komutlarında hata veriyor."Float() must be a string or a number,not Nonetype" hatası alıyorum.Hata nerde,eksik nerde

    Bu arada visual studio ile yazdım bunları.



    < Bu mesaj bu kişi tarafından değiştirildi arkasokaklar12634 -- 26 Ocak 2018; 16:22:51 >







  • Not1,2,3 den sonra
    Not4 = (not1+not2+not3)/3 yap sonra
    İf (not4>50):
    Başarılı


    Else komutunuda yazarsın.

    < Bu ileti tablet sürüm kullanılarak atıldı >
  • pascal olsa yazardımda
  • monarch25 M kullanıcısına yanıt
    Hocam zaten dediklerinizden bir farkı yok dediklerimin.Yine denedim olmadı.

    Typeerror : float() must string or a number,not "NoneType" hatası alıyorum.
  • Reis, Denedim çalıştı Buyur kodlar:

    a1=float(input("Not1:"))
    a2=float(input("Not2:"))
    a3=float(input("Not3:"))

    ort=(a1+a2+a3)/3

    print("Not1={} + Not2= {} + Not3={} Ortalama = {}".format(a1,a2,a3,ort))

    if(ort>=50):
    print("Başarılı")
    else:
    print("Başarısız")
  • not4 = float(İNPUT((not1 + not2 + not3)/3))



    şu büyük harfle yazdığım yeri kaldırman lazım. Saten ilk 3 notu input ile giriş yapmışsın bir daha ortalama alırken tekrar input diyorsun o zaman program giriş bekliyor. İçine de aritmatik işlem koymuşsun tam olmuş. Sonra neden float bunu algılamıyor.



    Ayrıca float kullanmana gerek yok. Python da bir sayıyı yanına .0 olarak yazarsan onu float olarak alıyo zaten. Örn (a+b+c)/3.0 yaptın mı direk float verir sonucu.

    < Bu ileti mini sürüm kullanılarak atıldı >
  • Eyvallah reis,şu format komutunu sevemedim ben çok uzun geliyor yazmak :D
    Neyse sağolasın.
  • CarnageTR C kullanıcısına yanıt
    Sağolun hocam teşekkür ederim.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.