class Avtale: # antar at alle avtaler varer 1 time, og at alle klokkeslett er et heltall # en avtale mellom klokka 9 og 10 vil f.eks. ha klokkeslett = 9 def __init__(self, navn, klokkeslett): self._navn = navn self._klokkeslett = klokkeslett def hentNavn(self): return self._navn def hentKlokkeslett(self): return self._klokkeslett class Timeplan: def __init__(self, dag): self._dag = dag self._timeplan = [] def leggTil(self, avtale): self._timeplan.append(avtale) def fjern(self, avtale): self._timeplan.remove(avtale) def skrivTimeplan(self): print('Timeplan for ' + self._dag + ':') for avtale in self._timeplan: print(avtale.hentKlokkeslett(), '-', avtale.hentNavn()) # går gjennom hver avtale og lagrer klokkeslettet # finner vi en avtale med samme klokkeslett som en tidligere avtale sier vi i fra og returnerer def sjekkKollisjon(self): klokkeslett = [] for avtale in self._timeplan: tid = avtale.hentKlokkeslett() if tid in klokkeslett: print('Kollisjon klokka', tid) return klokkeslett.append(tid) print('Timeplan er ok') def hovedprogram(): plan = Timeplan('Torsdag') plan.leggTil(Avtale('Gruppetime IN1000', 10)) plan.leggTil(Avtale('Lunsj', 12)) plan.leggTil(Avtale('Kino', 18)) plan.skrivTimeplan() plan.sjekkKollisjon() plan.leggTil(Avtale('Møte', 12)) plan.sjekkKollisjon() hovedprogram()