From 37712fa2591ee609b9b3a0bb438c55837bb037d5 Mon Sep 17 00:00:00 2001 From: Maksym Liashenko Date: Tue, 13 Oct 2026 12:36:31 +0000 Subject: [PATCH] =?UTF-8?q?Add=20u5/=C5=A0kolsk=C3=A1=20z=C3=A1hrada?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- u5/Školská záhrada | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 u5/Školská záhrada diff --git a/u5/Školská záhrada b/u5/Školská záhrada new file mode 100644 index 0000000..17cab07 --- /dev/null +++ b/u5/Školská záhrada @@ -0,0 +1,44 @@ +class NoSuchStudentException(Exception): + """Raised when plants are requested for a student not assigned a plot.""" + pass + + + +class Garden: + DEFAULT_STUDENTS = [ + "Alena" + "Boris" + "Cyril" + "Daniel" + "Eva" + "František" + "Gitka" + "Helena" + "Ivana" + "Jozef" + "Karol" + "Ladislav" + ] + + PLANT_MAP = { + "G":"Tráva", + "C":"Ďatelina", + "R":"Reďkovky", + "V":"Fialky", + } + + def __init__(self, diagram, students=None): + self.students = sorted(students) + self.rows = diagram.split("\n") + + def plants(self, student_name): + if student_name not in self.students: + raise NoSuchStudentException("Ziak neexistuje") + + index = self.student.index(student_name) + start = index *2 + end = start +2 + + plant_chars = self.rows[0][start:end] +self.rows[1][start.end] + + return [self.PLANT_MAP[char] for char in plant_chars]