diff --git a/Vehicle.py b/Vehicle.py new file mode 100644 index 0000000000000000000000000000000000000000..2427185a9ed023f680e8cb3283b5f533c9573467 --- /dev/null +++ b/Vehicle.py @@ -0,0 +1,50 @@ +class Vehicle(object): + + def __init__(self, speed=0): + self.speed = speed + self.odometer = 0 + self.time = 0 + + def say_state(self): + print("I'm going {} kph!".format(self.speed)) + + def accelerate(self): + self.speed += 5 + + def brake(self): + if self.speed < 5: + self.speed = 0 + else: + self.speed -= 5 + + def step(self): + self.odometer += self.speed + self.time += 1 + + def average_speed(self): + if self.time != 0: + return self.odometer / self.time + else: + pass + + +if __name__ == '__main__': + + my_car = Car() + print("I'm a car!") + while True: + action = input("What should I do? [A]ccelerate, [B]rake, " + "show [O]dometer, or show average [S]peed?").upper() + if action not in "ABOS" or len(action) != 1: + print("I don't know how to do that") + continue + if action == 'A': + my_car.accelerate() + elif action == 'B': + my_car.brake() + elif action == 'O': + print("The car has driven {} kilometers".format(my_car.odometer)) + elif action == 'S': + print("The car's average speed was {} kph".format(my_car.average_speed())) + my_car.step() + my_car.say_state() \ No newline at end of file