Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

#create class called car class Car: def __init__(self,year,make,speed): self.__y

ID: 3572521 • Letter: #

Question

#create class called car

class Car:
def __init__(self,year,make,speed):
self.__year_model=year
self.__make=make
self.__speed=0

#set the arguments for speed,year, and make
def set_year_model(self,year):
self.__year_model=year

def set_make(self,make):
self.__make=make

def set_speed(self,speed):
self.__speed=0

#the returns for speed, year, and make
def get_year_model(self):
return self.__year_model

def get_make(self):
return self.__make

def get_speed(self):
return self.__speed


#methods
def accelerate(self):
self.speed +=5

def brake(self):
self.speed-=5

def get_speed(self):
return self.speed

#actuall program
#create car object
def main():
my_car=Car()

year=print(input('car year: '))
make=print(input('car make: '))
speed= print('Current speed is 0')

#accelerate 5 times

my_car.accelerate()
print('My current speed:',my_car.get_speed())
my_car.accelerate()
print('My current speed:',my_car.get_speed())
my_car.accelerate()
print('My current speed:',my_car.get_speed())
my_car.accelerate()
print('My current speed:',my_car.get_speed())
my_car.accelerate()
print('My current speed:',my_car.get_speed())

#brake five times
my_car.brake()
print('My current speed after brake:',my_car.get_speed())
my_car.brake()
print('My current speed after brake:',my_car.get_speed())
my_car.brake()
print('My current speed after brake:',my_car.get_speed())
my_car.brake()
print('My current speed after brake:',my_car.get_speed())
my_car.brake()
print('My current speed after brake:',my_car.get_speed())

main()

what is wrong with my code? can you please help me. i am using python. please fix it for me. thank you.

Explanation / Answer

class Car:

    # The __init__ method initializes the attributes.

   def __init__(self, year_model, make, speed):

        self.__year_model = year_model

        self.__make = make

        self.__speed = speed

    # The set_year_model method sets the year_model attribute.

    def set_year_model(self, year_model):

        self.__year_model = year_model

    # The set_ make method sets the make attribute.

    def set_make(self, make):

        self.__make = make

    # The set_speed method sets the speed attribute.

    def set_speed(self, speed):

        self.__speed = speed

    # The get_year_model method returns the year_model attribute.

    def get_year_model(self):

        return self.__year_model

    # The get_make method returns the make attribute.

    def get_make(self):

        return self.__make

    # The accelerate method adds 5 to the speed attribute each time called.

    def accelerate(self, speed):

        self.__speed += 5

        # The brake method subtracts 5 to the speed attribute each time called.

    def brake(self, speed):

        if self.__speed > 0:

            self.__speed -= 5

        else:

            print('Error: The vehicle is not moving.')

    # The get_speed method returns the speed attribute.

    def get_speed(self):

        return self.__speed

    # The __str__ method returns the object's state as a string.

    def __str__(self):

        return 'Year and Model: ' + self.__year_model +

            ' Make: ' + self.__make

def main():

    # Get user's input for year_model.

    year_model = input('Enter the Year and Model of your vehicle: ')

    make = input('Enter the Make of your vehicle: ')

    speed = 0

    # Create a Car object.

    car = Car(year_model, make, speed)

    # Global constants for menu choices

    ACCELERATE = 1

    BRAKE = 2

    CURRENT = 3

    CAR_INFO = 4

    QUIT = 5

    # Initialize a variable for the user's choice.

    choice = 0

    # Process menu selections until the user wants to quit.

    while choice != QUIT:

        # Get the user's menu choice.

        choice = int(input("1 = accel, 2 = brake, 3 = current, 4 = car info, 5 = quit: "))

        # Process the choice.

        if choice == ACCELERATE:

            for count in range (1,5):

                car.accelerate(speed)

                print('Current speed: ' + str(car.get_speed()))

        elif choice == BRAKE:

            for count in range (1,5):

                car.brake(speed)

                print('Current speed: ' + str(car.get_speed()))

        elif choice == CURRENT:

            print('Current speed: ' + str(car.get_speed()))

        elif choice == CAR_INFO:

            print(car)

        if choice == QUIT:

            print('End of Program')

main()