from oblig import Oblig # 4a) 5 poeng class Emne: def __init__(self, emnekode, studenter, rettere): self._emnekode = emnekode self._studenter = studenter self._rettere = rettere self._obliger = {} # 4b) 5 poeng def _skrivMeny(self): print ("Behandler emnet " + self._emnekode + ". Lovlige kommandoer:") print ("O: Ny oblig") print ("F: Frist ute, start retting") print ("L: Lag eksamensliste") print ("A: Avslutt") def administrer(self): self._skrivMeny() kommando = input("Gi kommando: ").strip().upper() while kommando != "A": if kommando == "O": self._opprettOblig() elif kommando =="F": self._startRetting() elif kommando =="L": self._skrivEksamensListe() else: print("Ukjent kommando.") self._skrivMeny() kommando = input("Gi kommando: ").strip().upper() # 4g) def _opprettOblig(self): obligId = "oblig" + str(len(self._obliger)+1) frist = input("Oppgi frist for " + obligId + "paa formen aammdd: ") self._obliger[obligId] = Oblig(obligId, frist) def _startRetting(self): dagensDato = input("Oppgi dagens dato pa formen aammdd: ") for obligId in self._obliger: # Noekkel er streng obligId oblig = self._obliger[obligId] # Referanse til Oblig-objekt if oblig.klarForRetting(dagensDato): besvarelser = oblig.hentBesvarelser() resultater = oblig.fordelRetting(besvarelser, self._rettere) for sBruker in resultater: stud = self._studenter[sBruker] res = resultater[sBruker] stud.registrer(obligId, res) def _skrivEksamensListe(self): eksamensliste = [] for sBruker in self._studenter: stud = self._studenter[sBruker] if stud.altGodkjent(len(self._obliger)): eksamensliste.append(sBruker) print("Eksamensliste for emnet "+self._emnekode+":") for sBruker in eksamensliste: print(sBruker)