Untitled
unknown
python
2 years ago
2.0 kB
6
Indexable
def ulazniPodaci(): ulazniRecnik = {} end = "" while True: ulaznaLinija = input() if ulaznaLinija == end: break else: imePredmeta, brojStudenata, tezinaPredmeta = ulaznaLinija.split() if len(imePredmeta) < 7 or int(brojStudenata) < 0 or float(tezinaPredmeta) < 0: break else: ulazniRecnik[imePredmeta] = [brojStudenata, tezinaPredmeta] print(ulazniRecnik) return ulazniRecnik def izracunajTezinu(ulazniRecnik): kljucevi = ulazniRecnik.keys() akronimPredmeta = [] for kljuc in kljucevi: akronim = kljuc[6:] akronimPredmeta.append(akronim) print("Svi akronimi", akronimPredmeta) akronimPredmeta = set(akronimPredmeta) print("Jedinstveni akronimi", akronimPredmeta) izlazniRecnik = {} for predmet in akronimPredmeta: izlazniRecnik[predmet] = 0.0 tezinaTmp = 0.0 brojGrupa = 0.0 ukupanBrojGrupa = 0.0 for kljuc in kljucevi: akronim = kljuc[6:] if akronim == predmet: vrednosti = ulazniRecnik[kljuc] brojStudenata = int(vrednosti[0]) tezinaPredmeta = float(vrednosti[1]) brojGrupa, ostatak = divmod(brojStudenata, 60) if ostatak != 0: brojGrupa += 1 ukupanBrojGrupa += brojGrupa tezinaTmp += brojGrupa * tezinaPredmeta if ukupanBrojGrupa == 0: print("Greska, ukupan broj grupa je 0!") izlazniRecnik[predmet] = 0.0 else: izlazniRecnik = tezinaTmp / ukupanBrojGrupa print("Nove tezine", izlazniRecnik) return izlazniRecnik def stampajTezine(izlazniRecnik): sortiraniKljucevi = sorted(izlazniRecnik.keys()) for kljuc in sortiraniKljucevi: print("(:10s){:0.2f}".format(kljuc, izlazniRecnik[kljuc]))
Editor is loading...