瀏覽代碼

lesson3 txt format

Lex 1 年之前
父節點
當前提交
604e814f8c

+ 24 - 0
python_technology_stack/Lesson16/L16Task1.py

@@ -0,0 +1,24 @@
+class Kassa:
+    def __init__(self):
+        self.balance = 0
+
+    def top_up(self, X):
+        """Пополнить кассу на X рублей."""
+        self.balance += X
+
+    def count_1000(self):
+        """Вернуть количество целых тысяч в кассе."""
+        return self.balance // 1000
+
+    def take_away(self, X):
+        """Забрать X рублей из кассы, если достаточно денег, иначе выкинуть ошибку."""
+        if X > self.balance:
+            raise ValueError("Недостаточно денег в кассе")
+        self.balance -= X
+
+# Пример использования
+kassa = Kassa()
+kassa.top_up(5000)
+print(kassa.count_1000())  # Output: 5
+kassa.take_away(2000)
+print(kassa.count_1000())  # Output: 3

+ 24 - 0
python_technology_stack/Lesson16/L16Task1.txt

@@ -0,0 +1,24 @@
+class Kassa:
+    def __init__(self):
+        self.balance = 0
+
+    def top_up(self, X):
+        """Пополнить кассу на X рублей."""
+        self.balance += X
+
+    def count_1000(self):
+        """Вернуть количество целых тысяч в кассе."""
+        return self.balance // 1000
+
+    def take_away(self, X):
+        """Забрать X рублей из кассы, если достаточно денег, иначе выкинуть ошибку."""
+        if X > self.balance:
+            raise ValueError("Недостаточно денег в кассе")
+        self.balance -= X
+
+# Пример использования
+kassa = Kassa()
+kassa.top_up(5000)
+print(kassa.count_1000())  # Output: 5
+kassa.take_away(2000)
+print(kassa.count_1000())  # Output: 3

+ 48 - 0
python_technology_stack/Lesson16/L16Task2.py

@@ -0,0 +1,48 @@
+class Tortoise:
+    def __init__(self, x=0, y=0, s=1):
+        self.x = x
+        self.y = y
+        self.s = s
+
+    def go_up(self):
+        """Перемещает черепашку вверх на s клеточек."""
+        self.y += self.s
+
+    def go_down(self):
+        """Перемещает черепашку вниз на s клеточек."""
+        self.y -= self.s
+
+    def go_left(self):
+        """Перемещает черепашку влево на s клеточек."""
+        self.x -= self.s
+
+    def go_right(self):
+        """Перемещает черепашку вправо на s клеточек."""
+        self.x += self.s
+
+    def evolve(self):
+        """Увеличивает шаг на 1."""
+        self.s += 1
+
+    def degrade(self):
+        """Уменьшает шаг на 1 или выбрасывает ошибку, если шаг ≤ 0."""
+        if self.s <= 1:
+            raise ValueError("Шаг не может стать ≤ 0")
+        self.s -= 1
+
+    def count_moves(self, x2, y2):
+        """Возвращает минимальное количество действий для достижения точки (x2, y2)."""
+        dx = abs(x2 - self.x)
+        dy = abs(y2 - self.y)
+        return max((dx + self.s - 1) // self.s, (dy + self.s - 1) // self.s)
+
+# Пример использования
+tortoise = Tortoise()
+tortoise.go_up()
+tortoise.go_right()
+print(tortoise.x, tortoise.y)  # Output: 1 1
+tortoise.evolve()
+print(tortoise.s)  # Output: 2
+tortoise.go_up()
+print(tortoise.y)  # Output: 3
+print(tortoise.count_moves(10, 10))  # Output: 5

+ 48 - 0
python_technology_stack/Lesson16/L16Task2.txt

@@ -0,0 +1,48 @@
+class Tortoise:
+    def __init__(self, x=0, y=0, s=1):
+        self.x = x
+        self.y = y
+        self.s = s
+
+    def go_up(self):
+        """Перемещает черепашку вверх на s клеточек."""
+        self.y += self.s
+
+    def go_down(self):
+        """Перемещает черепашку вниз на s клеточек."""
+        self.y -= self.s
+
+    def go_left(self):
+        """Перемещает черепашку влево на s клеточек."""
+        self.x -= self.s
+
+    def go_right(self):
+        """Перемещает черепашку вправо на s клеточек."""
+        self.x += self.s
+
+    def evolve(self):
+        """Увеличивает шаг на 1."""
+        self.s += 1
+
+    def degrade(self):
+        """Уменьшает шаг на 1 или выбрасывает ошибку, если шаг ≤ 0."""
+        if self.s <= 1:
+            raise ValueError("Шаг не может стать ≤ 0")
+        self.s -= 1
+
+    def count_moves(self, x2, y2):
+        """Возвращает минимальное количество действий для достижения точки (x2, y2)."""
+        dx = abs(x2 - self.x)
+        dy = abs(y2 - self.y)
+        return max((dx + self.s - 1) // self.s, (dy + self.s - 1) // self.s)
+
+# Пример использования
+tortoise = Tortoise()
+tortoise.go_up()
+tortoise.go_right()
+print(tortoise.x, tortoise.y)  # Output: 1 1
+tortoise.evolve()
+print(tortoise.s)  # Output: 2
+tortoise.go_up()
+print(tortoise.y)  # Output: 3
+print(tortoise.count_moves(10, 10))  # Output: 5