Advertisement
dimanou_04

need for speed

Jul 29th, 2022
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.12 KB | None | 0 0
  1. def create_cars(cars, number):
  2.     for _ in range(number):
  3.         data = input().split('|')
  4.         car_name = data[0]
  5.         mileage = int(data[1])
  6.         fuel = int(data[2])
  7.  
  8.         cars[car_name] = {'mileage': mileage, 'fuel': fuel}
  9.  
  10.     return cars
  11.  
  12.  
  13. def addition_data(cars):
  14.  
  15.     while True:
  16.         command = input().split(' : ')
  17.         if command[0] == "Stop":
  18.             break
  19.  
  20.         elif command[0] == "Drive":
  21.             car_name = command[1]
  22.             distance = int(command[2])
  23.             fuel = int(command[3])
  24.             if cars[car_name]['fuel'] < fuel:
  25.                 print("Not enough fuel to make that ride")
  26.             else:
  27.                 cars[car_name]['mileage'] += distance
  28.                 cars[car_name]['fuel'] -= fuel
  29.                 print(f"{car_name} driven for {distance} kilometers. {fuel} liters of fuel consumed.")
  30.             if cars[car_name]['mileage'] >= 100000:
  31.                 del cars[car_name]
  32.                 print(f"Time to sell the {car_name}!")
  33.  
  34.         elif command[0] == "Refuel":
  35.             car_name = command[1]
  36.             fuel = int(command[2])
  37.             if cars[car_name]['fuel'] + fuel > 75:
  38.                 fuel = 75 - cars[car_name]['fuel']
  39.                 cars[car_name]['fuel'] = 75
  40.             else:
  41.                 cars[car_name]['fuel'] += fuel
  42.             print(f"{car_name} refueled with {fuel} liters")
  43.  
  44.         elif command[0] == "Revert":
  45.             car_name = command[1]
  46.             kilometers = int(command[2])
  47.             cars[car_name]['mileage'] -= kilometers
  48.             if cars[car_name]['mileage'] < 10000:
  49.                 cars[car_name]['mileage'] = 10000
  50.                 continue
  51.             print(f"{car_name} mileage decreased by {kilometers} kilometers")
  52.  
  53.     return cars
  54.  
  55.  
  56. def final_result(cars):
  57.     for element in cars:
  58.         print(f"{element} -> Mileage: {cars[element]['mileage']} kms, Fuel in the tank: {cars[element]['fuel']} lt.")
  59.  
  60.  
  61. def need_for_speed(number):
  62.     cars = {}
  63.  
  64.     create_cars(cars, number)
  65.     addition_data(cars)
  66.     final_result(cars)
  67.  
  68.  
  69. n = int(input())
  70. need_for_speed(n)
  71.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement