Ortaokul Matematik 6. Sınıf ders kitabı sayfa 144 de bulunan Ortalama ve Açıklık ile ilgili etkinliğimiz ve sonuçları aşağıdadır. Kolay gelsin.
# UNITE 4 : Aritmetik ORTALAMA ve AÇIKLIK : Sayfa 144 ''' Bir veri grubuna aritmetik ortalama değerinden büyük bir veri eklendiğinde ortalama artar, aritmetik ortalama değerinden küçük bir veri eklendiğinde ise ortalama azalır. ''' def makMin(listem): mak = 0 min = 100 makKisi = [] minKisi = [] for veri in listem: puan = int(veri[:-1].split("-")[1]) kisi = veri[:-1].split("-")[0] if puan >= mak: mak = puan if puan < min: min = puan for veri in listem: puan = int(veri[:-1].split("-")[1]) kisi = veri[:-1].split("-")[0] if puan == mak: makKisi.append(kisi) if puan == min: minKisi.append(kisi) return mak,makKisi,min,minKisi from colorama import Fore notlar = {"0-10" : 0,"11-20" : 0,"21-30" : 0,"31-40" : 0,"41-50" : 0,"51-60" : 0,"61-70" : 0,"71-80" : 0,"81-90" : 0,"91-100" : 0} kisiler = {"0-10" : [],"11-20" : [],"21-30" : [],"31-40" : [],"41-50" : [],"51-60" : [],"61-70" : [],"71-80" : [],"81-90" : [],"91-100" : []} oran = {"0-10" : 0,"11-20" : 0,"21-30" : 0,"31-40" : 0,"41-50" : 0,"51-60" : 0,"61-70" : 0,"71-80" : 0,"81-90" : 0,"91-100" : 0} notlarToplam = 0 ogrenciSayisi = 0 with open("19_Sinif.txt","r",encoding="utf-8") as dosya: gelenVeri = dosya.readlines() for ogrenci in gelenVeri: ogrNot = int(ogrenci[:-1].split("-")[1]) ogrIsim = ogrenci[:-1].split("-")[0] notlarToplam = notlarToplam + int(ogrenci[:-1].split("-")[1]) ogrenciSayisi += 1 if ogrNot >= 0 and ogrNot < 11: notlar["0-10"] += 1 kisiler["0-10"].append(ogrIsim) elif ogrNot >= 11 and ogrNot < 21: notlar["11-20"] += 1 kisiler["11-20"].append(ogrIsim) elif ogrNot >= 21 and ogrNot < 31: notlar["21-30"] += 1 kisiler["21-30"].append(ogrIsim) elif ogrNot >= 31 and ogrNot < 41: notlar["31-40"] += 1 kisiler["31-40"].append(ogrIsim) elif ogrNot >= 41 and ogrNot < 51: notlar["41-50"] += 1 kisiler["41-50"].append(ogrIsim) elif ogrNot >= 51 and ogrNot < 61: notlar["51-60"] += 1 kisiler["51-60"].append(ogrIsim) elif ogrNot >= 61 and ogrNot < 71: notlar["61-70"] += 1 kisiler["61-70"].append(ogrIsim) elif ogrNot >= 71 and ogrNot < 81: notlar["71-80"] += 1 kisiler["71-80"].append(ogrIsim) elif ogrNot >= 81 and ogrNot < 91: notlar["81-90"] += 1 kisiler["81-90"].append(ogrIsim) else: notlar["91-100"] += 1 kisiler["91-100"].append(ogrIsim) for anahtar in notlar.keys(): if notlar[anahtar] != 0: print(Fore.LIGHTWHITE_EX,end="") print(f"\n{anahtar} arasında not alanlar : ") print(Fore.RED,end="") print(f"{notlar[anahtar]} adet öğrenci.") print(Fore.WHITE,end="") oran[anahtar] = str(round(notlar[anahtar] * 100/ogrenciSayisi,2)) + "%" for kisi in kisiler[anahtar]: print(kisi) print(Fore.LIGHTWHITE_EX) print("SINIF GENEL RAPOR") print("-------------------------------------------------------") print(f"Sınıf Öğrenci Sayısı : {ogrenciSayisi}") print(f"Sınıf Öğrencilerinin Notları Toplamı : {notlarToplam}") print(f"Sınıf NOT Ortalaması : {round(notlarToplam / ogrenciSayisi,2)}") print(Fore.LIGHTYELLOW_EX,end ="") print("Alınan notların aralıklara dağılımları :") for anahtar,deger in oran.items(): if deger != 0: print(f"{anahtar} : {deger}") # En Yüksek Maksimum Not ve alanların listesi rapor = makMin(gelenVeri) rapor = list(rapor) print(Fore.LIGHTWHITE_EX,end ="") print(f"\nBu sınıfın En Yüksek Notu : {rapor[0]} ve Bu notu alan öğrencilerin Listesi : ") print(Fore.WHITE,end ="") for makNotKisi in rapor[1]: print(makNotKisi,end=" --- ") # En Düşük Minimum not alanların listesi. print(Fore.LIGHTWHITE_EX,end ="") print(f"\nBu sınıfın En Düşük Notu : {rapor[2]} ve Bu notu alan öğrencilerin Listesi :") print(Fore.WHITE,end ="") for makNotKisi in rapor[3]: print(makNotKisi,end=" --- ") print(Fore.LIGHTYELLOW_EX, end="") print(f"\n\nSınıfın Notlar Arasındaki Açıklık : {rapor[0] - rapor[2]}")