| | |
| | | ects_effort: Final[int] = 30 |
| | | |
| | | |
| | | def lecture_effort(lecture_pre_week, ects): |
| | | """ |
| | | :param lecture_pre_week: wie viel Veranstaltungen hat eine Vorlesung in der Woche |
| | | :param ects: Anzahl der ECTS der Vorlesung |
| | | :return: |
| | | """ |
| | | effort_in_time = ects * ects_effort |
| | | effort_per_week = effort_in_time / lecture_time # how many hours for a week |
| | | return effort_per_week - (lecture_pre_week * 1.5) |
| | | class Lecture(): |
| | | def __init__(self, name, ects, frequency): |
| | | """ |
| | | |
| | | :param name: |
| | | :param ects: |
| | | :param frequency: |
| | | """ |
| | | self._name = name |
| | | self._ects = ects |
| | | self._frequency = frequency |
| | | |
| | | def cal_effort(self, time_per_ects = ects_effort, duration = lecture_time) -> float: |
| | | """ |
| | | Berechnet den Zeitaufwand pro woche für diese Vorlesung |
| | | :param time_per_ects: |
| | | :param duration: |
| | | :return: |
| | | """ |
| | | effort_in_time = self._ects * time_per_ects |
| | | effort_per_week = effort_in_time / duration |
| | | return effort_per_week - (self._frequency * 1.5) |
| | | |
| | | def __repr__(self): |
| | | return f"Vorlesungsname {self._name} ECTS: {self._ects}" |
| | | |
| | | # def __str__(self): |
| | | # return self.__repr__() |
| | | |
| | | |
| | | def format_lecture_effort(name, lecture_count, ects, effort): |
| | | return f"Für die Vorlesung {name} mit {ects} ECTS und {lecture_count} Veranstaltung pro Woche brauchen Sie {effort} Stunden zu lernen." |
| | | def parse_lecture_line(line: str) -> Lecture: |
| | | words = line.split(";") |
| | | words = [w.strip() for w in words] |
| | | name = words[0] |
| | | count = float(words[1]) |
| | | ects = int(words[2]) |
| | | return Lecture(name, ects, count) |
| | | pass |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |