Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Clasa Task
- # numeTask
- # durata
- # oraStart
- # __init__
- # __repr__
- #disjoint(t)
- #__eq__
- #inserabil()
- #__gt__
- #clone
- # class Zi
- # zi
- # taskuri: Lista
- # __init__
- # __repr__
- # adaugareTask(*)
- # durataTotala()
- # class Agenda
- # coada circulara de zile
- # Clasa Day(enum.Enum):
- #Monday = 0
- #Tuesday = 1
- #Wednesday = 2
- #Thursday = 3
- #Friday = 4
- #Saturday = 5
- #Sunday = 6
- import enum
- class Day(enum.Enum):
- def __init__(self):
- Monday = 0
- Tuesday = 1
- Wednesday = 2
- Thursday = 3
- Friday = 4
- Saturday = 5
- Sunday = 6
- class Task:
- def __init__(self, numeTask, durata, oraStart):
- self.numeTask = numeTask
- self.durata = durata
- self.oraStart = oraStart
- self.link = None
- def __repr__(self):
- return ("Task-ul " + str(self.numeTask) + " dureaza " + str(self.durata))
- def disjoint(self, t):
- if (self.oraStart + self.durata) <= t.oraStart:
- return True
- elif (t.oraStart + t.durata) <= self.oraStart:
- return True
- else:
- return False
- def __eq__(self, t):
- if t != None:
- if (self.oraStart != t.oraStart):
- return False
- else:
- return True
- def __gt__(self, t):
- if t != None:
- if t.oraStart > self.oraStart:
- return True
- else:
- return False
- def clone(self):
- return Task(self.numeTask, self.durata, self.oraStart, self.link)
- def inserabil(self):
- if self.oraStart + self.durata <= 24:
- return True
- else:
- return False
- class Zi:
- def __init__(self, zi):
- self.Zi = zi
- self.taskuri = None
- def adaugareTask(self, t):
- if t == None:
- return
- if self.durataTotala() < 24:
- if t.inserabil() == True:
- sePoate = True
- tk = self.taskuri
- while tk != None:
- if t.disjoint(tk) == False:
- sePoate = False
- break
- tk = tk.link
- if sePoate == True:
- if self.taskuri == None:
- self.taskuri = t
- else:
- t.link = self.taskuri
- self.taskuri = t
- else:
- print("Nu mai este loc")
- def adaugareSpate(self, task):
- return None
- def durataTotala(self):
- durata = 0
- i = self.taskuri
- while i != None:
- durata += i.durata
- i = i.taskuri
- return durata
- def __repr__(self):
- s = " zi:"
- s = s + str(self.Zi) + " "
- i = self.taskuri
- while i != None:
- s = s + str(i) + ""
- i = i.link
- return s
- task1 = Task("Fac baie", 2, 20)
- print(task1)
- task2 = Task("Mananc", 1, 20)
- print(task2)
- ziua = Zi(1)
- ziua.adaugareTask(task1)
- print(ziua)
- #ziua.adaugareTask()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement