• import random class Student: def __init__(self, name): self.name = name self.gladness = 50 self.progress = 0 self.alive = True def to_study(self): print("Time to study") self.progress += 0.12 self.gladness -= 3 def to_chill(self): print("Rest time") self.gladness += 5 self.progress -= 0.1 def is_alive(self): if self.progress < -0.5: print("Cast out…") self.alive = False elif self.gladness <= 0: print("Depression…") self.alive = False elif self.progress > 5: print("Passed externally…") self.alive = False def end_of_day(self): print(f"Gladness = {self.gladness}" print(f"Progress = {round(self.progress, 2)}") def live(self, day): day = "Day" + str(day) + "of" + self.name + "life" print(f"{day:=^50}") live_cube = random.randint(1, 3) if live_cube == 1: self.to_study() elif live_cube == 2: self.to_sleep() elif live_cube == 3: self.to_chill() self.end_of_day() self.is_alive() Розширте клас студента, додавши атрибут грошей. Реалізуйте метод роботи студента, щоб у нього була можливість заробітку. Під час відпочинку гроші витрачаються. Крім того, глибше продумайте поведінку студента. Наприклад, за браку коштів він має піти на роботу, коли виникають проблеми з навчанням – почати вчитися, тощо. Студент має прожити рік. ДАЮ 100 БАЛІВ!

Ответы 1

  • Ответ:

    import random

    class Student:

    def init(self, name):

    self.name = name

    self.gladness = 50

    self.progress = 0

    self.money = 0

    self.alive = True

    def to_study(self):

       print("Time to study")

       self.progress += 0.12

       self.gladness -= 3

    def to_sleep(self):

       print("Sleep time")

       self.gladness += 2

       self.progress -= 0.05

    def to_chill(self):

       print("Rest time")

       self.gladness += 5

       self.progress -= 0.1

       self.money -= 10

    def to_work(self):

       print("Work time")

       self.money += random.randint(10, 50)

       self.gladness -= 5

       self.progress -= 0.05

    def to_learn(self):

       print("Learn time")

       self.money -= 20

       self.progress += 0.2

       self.gladness -= 5

    def is_alive(self):

       if self.progress < -0.5:

           print("Cast out…")

           self.alive = False

       elif self.gladness <= 0:

           print("Depression…")

           self.alive = False

       elif self.progress > 5:

           print("Passed externally…")

           self.alive = False

       elif self.money < -50:

           print("Bankrupt…")

           self.alive = False

           self.progress = -1

    def end_of_day(self):

       print(f"Gladness = {self.gladness}")

       print(f"Progress = {round(self.progress, 2)}")

       print(f"Money = {self.money}")

    def live(self):

       for day in range(1, 366):

           day_info = "Day " + str(day) + " of " + self.name + "'s life"

           print(f"{day_info:=^50}")

           live_cube = random.randint(1, 5)

           if live_cube == 1:

               self.to_study()

           elif live_cube == 2:

               self.to_sleep()

           elif live_cube == 3:

               self.to_chill()

           elif live_cube == 4:

               self.to_work()

           elif live_cube == 5:

               self.to_learn()

           self.end_of_day()

           self.is_alive()

           if not self.alive:

               print(f"{self.name} died on Day {day} :(")

               break

    Example usage

    s = Student("John")

    s.live()

    • Автор:

      edwin388
    • 1 год назад
    • 6
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years