notlar=[]
harf_notu=[]
ort=[]
ogr=[]
ogr_sayisi=0
class Ogrenci:
def __init__(self):
self.ogr_isim = 1
self.ogr_sayısı=ogr_sayisi
def Ogrenci_sayisi(self):
self.ogr_sayısı=(int(input("Ogrenci Sayısı:")))
def Ogrenci_ismi(self):
for i in range(0,self.ogr_sayısı):
self.ogr_isim=input((str(i+1))+"-Numaralı Öğrencinin İsmini Giriniz:")
ogr.append(self.ogr_isim)
def Notlari_hesapla(self):
for i in range(0,self.ogr_sayısı):
hash={}
hash["vize_1"] = float(input("{} İsimli Öğrencinin Vize_1 : ".format(ogr[i])))
hash["vize_2"] = float(input("{} İsimli Öğrencinin Vize_2 : ".format(ogr[i])))
hash["final"] = float(input("{} İsimli Öğrencinin Final : ".format(ogr[i])))
hash["ortalama"] = round(sum(hash[_not] * yuzde for _not, yuzde in zip(["vize_1", "vize_2", "final"], [25/100, 35/100, 40/100])), 2)
notlar.append(hash)
if hash["vize_1"] > 100 or hash["vize_2"] > 100 or hash["final"] > 100:
print("\nDeğer 100'den Büyük Olamaz Tekrar Giriniz.")
c.Notlari_hesapla()
break
ortalama = round(sum(hash[_not] * yuzde for _not, yuzde in zip(["vize_1", "vize_2", "final"], [25/100, 35/100, 40/100])), 2)
ort.append(ortalama)
notlar.append(hash)
print("")
def Harf_notunu_hesapla(self):
for i in range(self.ogr_sayısı):
if 90 <= ort[i] <= 100:
print("\n{} İsimli Öğrencinin Harf Notu:AA".format(ogr[i]))
harf_notu.append("AA")
elif 85 <= ort[i] <= 89:
print("\n{} İsimli Öğrencinin Harf Notu:BA".format(ogr[i]))
harf_notu.append("BA")
elif 80 <= ort[i] <= 84:
print("\n{} İsimli Öğrencinin Harf Notu:BB".format(ogr[i]))
harf_notu.append("BB")
elif 70 <= ort[i] <= 79:
print("\n{} İsimli Öğrencinin Harf Notu:CB".format(ogr[i]))
harf_notu.append("CB")
elif 60 <= ort[i] <= 69:
print("\n{} İsimli Öğrencinin Harf Notu:CC".format(ogr[i]))
harf_notu.append("CC")
elif 45 <= ort[i] <= 59:
print("\n{} İsimli Öğrencinin Harf Notu:DC".format(ogr[i]))
harf_notu.append("DC")
elif 0 <= ort[i] <= 44:
print("\n{} İsimli Öğrencinin Harf Notu:DD".format(ogr[i]))
harf_notu.append("DD")
else:
("Hata!")
def Çıktı(self):
for i in range(0,self.ogr_sayisi):
global öğrenci_bilgileri
öğrenci_bilgileri=[
{"isim":ogr[i],"notlar":notlar[i],"Ortalama":ort[i],"Harf Notu":harf_notu[i]}
]
print("---------------------------------")
print(öğrenci_bilgileri)
def sinif_ortalamasini_hesapla_ve_yazdir(self):
print("---------------------------------")
sinif_ortalama=sum(ort)/self.ogr_sayisi
print("Sınıfın Ortalaması:{}".format(sinif_ortalama))
c=Ogrenci()
c.Ogrenci_sayisi()
c.Ogrenci_ismi()
c.Notlari_hesapla()
c.Harf_notunu_hesapla()
c.Çıktı()
c.sinif_ortalamasini_hesapla_ve_yazdir()
Bu kod üzereinde bir şeyler deniyorumda değişik hatalar veriyor.Sorun nerede ?