Предмет: Информатика, автор: almasbekowa

помогите (python)
Создайте класс Car. Пропишите в конструкторе параметры make, model, year,
odometer, fuel. Пусть у показателя odometer будет первоначальное значение 0,
а у fuel 70. Добавьте метод drive, который будет принимать расстояние в км. В
самом начале проверьте, хватит ли вам бензина из расчета того, что машина
расходует 10 л / 100 км (1л - 10 км) . Если его хватит на введенное расстояние,
то пусть этот метод добавляет эти километры к значению одометра, но не
напрямую, а с помощью приватного метода __add_distance. Помимо этого
пусть метод drive также отнимет потраченное количество бензина с помощью
приватного метода __subtract_fuel, затем пусть распечатает на экран “Let’s
drive!”. Если же бензина не хватит, то распечатайте “Need more fuel, please, fill
more!”

Ответы

Автор ответа: rklimow409
0

class Car:

   def __init__(self, make, model, year, odometer=0, fuel=70):

       self.make = make

       self.model = model

       self.year = year

       self.odometer = odometer

       self.fuel = fuel

   def __add_distance(self, distance):

       self.odometer += distance

   def __subtract_fuel(self, fuel_consumed):

       self.fuel -= fuel_consumed

   def drive(self, distance):

       fuel_consumed = distance / 10

       if fuel_consumed > self.fuel:

           print("Need more fuel, please, fill more!")

       else:

           self.__add_distance(distance)

           self.__subtract_fuel(fuel_consumed)

           print("Let's drive!")

my_car = Car("Toyota", "Camry", 2020)

my_car.drive(100)  # prints "Let's drive!"

my_car.drive(200)  # prints "Need more fuel, please, fill more!"

Обратите внимание, что методы __add_distance и __subtract_fuel отмечены как приватные, используя префикс из двух подчеркиваний. Это означает, что эти методы могут быть доступны только внутри класса Car и не предназначены для вызова непосредственно извне класса. Это общепринятое соглашение в Python, указывающее, что эти методы являются частью реализации и не должны использоваться непосредственно внешним кодом.

Похожие вопросы
Предмет: Алгебра, автор: sveto4kabondar