private static void ParseCommand(int numberOfCommands) { for (int i = 0; i < numberOfCommands; i++) { string[] commandParts = Console.ReadLine().Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); string command = commandParts[0]; switch (command) { case "Drive": DriveCommand(commandParts); break; case "Refuel": RefuelCommand(commandParts); break; case "DriveEmpty": bus.DriveEmpty(double.Parse(commandParts[2])); break; } } }
static void Main(string[] args) { string[] tokens = Console.ReadLine().Split(); Car car = new Car(double.Parse(tokens[1]), double.Parse(tokens[2]), double.Parse(tokens[3])); tokens = Console.ReadLine().Split(); Truck truck = new Truck(double.Parse(tokens[1]), double.Parse(tokens[2]), double.Parse(tokens[3])); tokens = Console.ReadLine().Split(); Bus bus = new Bus(double.Parse(tokens[1]), double.Parse(tokens[2]), double.Parse(tokens[3])); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { tokens = Console.ReadLine().Split(); if (tokens[0] == "Drive") { if (tokens[1] == "Car") { Console.WriteLine(car.Drive(double.Parse(tokens[2]))); } else if (tokens[1] == "Truck") { Console.WriteLine(truck.Drive(double.Parse(tokens[2]))); } else { Console.WriteLine(bus.Drive(double.Parse(tokens[2]))); } } else if (tokens[0] == "Refuel") { if (tokens[1] == "Car") { car.Refuel(double.Parse(tokens[2])); } else if (tokens[1] == "Truck") { truck.Refuel(double.Parse(tokens[2])); } else { bus.Refuel(double.Parse(tokens[2])); } } else // DriveEmpty { Console.WriteLine(bus.DriveEmpty(double.Parse(tokens[2]))); } } Console.WriteLine($"Car: {car.FuelQuantity:F2}"); Console.WriteLine($"Truck: {truck.FuelQuantity:F2}"); Console.WriteLine($"Bus: {bus.FuelQuantity:F2}"); }
public static void Main() { var vehicles = new Vehicle[3]; for (int i = 0; i < 3; i++) { var carInformation = Console.ReadLine(); vehicles[i] = VehicleFactory.InitializeVehicle(carInformation); } var commands = int.Parse(Console.ReadLine()); for (int i = 0; i < commands; i++) { var commandParts = Console.ReadLine().Split(" "); var command = commandParts[0]; var vehicleType = commandParts[1]; if (command == "Drive") { var distance = double.Parse(commandParts[2]); var vehicle = vehicles.FirstOrDefault(x => x.GetType().Name == vehicleType); Console.WriteLine(vehicle?.Drive(distance)); } else if (command == "DriveEmpty") { var distance = double.Parse(commandParts[2]); Bus bus = (Bus)vehicles[2]; Console.WriteLine(bus.DriveEmpty(distance)); } else if (command == "Refuel") { try { var liters = double.Parse(commandParts[2]); var vehicle = vehicles.FirstOrDefault(x => x.GetType().Name == vehicleType); vehicle.Refuel(liters); } catch (ArgumentException ae) { Console.WriteLine(ae.Message); } } } foreach (var vehicle in vehicles) { Console.WriteLine(vehicle); } }
static void Main(string[] args) { string[] vechicleData = Console.ReadLine().Split(); Car car = new Car(double.Parse(vechicleData[1]), double.Parse(vechicleData[2]), double.Parse(vechicleData[3])); vechicleData = Console.ReadLine().Split(); Truck truck = new Truck(double.Parse(vechicleData[1]), double.Parse(vechicleData[2]), double.Parse(vechicleData[3])); vechicleData = Console.ReadLine().Split(); Bus bus = new Bus(double.Parse(vechicleData[1]), double.Parse(vechicleData[2]), double.Parse(vechicleData[3])); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { string[] input = Console.ReadLine().Split(); if (input[0] == "Drive") { if (input[1] == nameof(Car)) { car.Drive(double.Parse(input[2])); } else if (input[1] == nameof(Truck)) { truck.Drive(double.Parse(input[2])); } else if (input[1] == nameof(Bus)) { bus.Drive(double.Parse(input[2])); } } else if (input[0] == "Refuel") { if (input[1] == nameof(Car)) { car.Refuel(double.Parse(input[2])); } else if (input[1] == nameof(Truck)) { truck.Refuel(double.Parse(input[2])); } else if (input[1] == nameof(Bus)) { bus.Refuel(double.Parse(input[2])); } } else if (input[0] == "DriveEmpty" && input[1] == nameof(Bus)) { bus.DriveEmpty(double.Parse(input[2])); } } Console.WriteLine($"Car: {car.FuelQuantity:F2}"); Console.WriteLine($"Truck: {truck.FuelQuantity:F2}"); Console.WriteLine($"Bus: {bus.FuelQuantity:F2}"); }
private static void ParseCommand(string[] command, Car car, Bus bus, Truck truck) { string res = "Unknown command"; switch (command[0]) { case "Drive": { double.TryParse(command[2], out double distance); res = Drive(command[1], distance, car, bus, truck); Console.WriteLine(res); } break; case "DriveEmpty": { double.TryParse(command[2], out double distance); switch (command[1]) { case "Bus": res = bus.DriveEmpty(distance); break; default: res = "Only bus can be drivven empty."; break; } Console.WriteLine(res); } break; case "Refuel": { double.TryParse(command[2], out double liters); switch (command[1]) { case "Car": res = car.Refuel(liters); break; case "Truck": res = truck.Refuel(liters); break; case "Bus": res = bus.Refuel(liters); break; default: res = "Unknown vehicle"; break; } if (res != "") { Console.WriteLine(res); } } break; default: res = "unknown command"; break; } }
private static void DoCommands(IVehicle car, IVehicle truck, IVehicle bus) { ICollection <string> parts = Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries); double litres = double.Parse(parts.ElementAt(2)); switch (parts.ElementAt(1)) { case "Car": if (parts.ElementAt(0) == "Drive") { car.Drive(litres); } else { car.Refuel(litres); } break; case "Truck": if (parts.ElementAt(0) == "Drive") { truck.Drive(litres); } else { truck.Refuel(litres); } break; case "Bus": Bus current = bus as Bus; if (parts.ElementAt(0) == "Drive") { current?.Drive(litres); } else if (parts.ElementAt(0) == "DriveEmpty") { current?.DriveEmpty(litres); } else { current?.Refuel(litres); } break; default: break; } }
public static void ChekVenichke(string veniChletype, string operation, double num, Car car, Truck truck, Bus bus) { try { if (veniChletype == "Car") { if (operation == "Drive") { Console.WriteLine(car.Drive(num)); } else { car.Refuel(num); } } else if (veniChletype == "Truck") { if (operation == "Drive") { Console.WriteLine(truck.Drive(num)); } else { truck.Refuel(num); } } else if (veniChletype == "Bus") { if (operation == "Drive") { Console.WriteLine(bus.Drive(num)); } else if (operation == "DriveEmpty") { Console.WriteLine(bus.DriveEmpty(num)); } else { bus.Refuel(num); } } } catch (Exception ex) { Console.WriteLine(ex.Message); } }
static void Main(string[] args) { string[] carArgs = Console.ReadLine().Split(); double carFuel = double.Parse(carArgs[1]); double carLitersPerKilometer = double.Parse(carArgs[2]); double carCapacity = double.Parse(carArgs[3]); Car car = new Car(carFuel, carLitersPerKilometer, carCapacity); string[] truckArgs = Console.ReadLine().Split(); double truckFuel = double.Parse(truckArgs[1]); double truckLitersPerKilometer = double.Parse(truckArgs[2]); double truckCapacity = double.Parse(truckArgs[3]); Truck truck = new Truck(truckFuel, truckLitersPerKilometer, truckCapacity); string[] busArgs = Console.ReadLine().Split(); double busFuel = double.Parse(busArgs[1]); double busLiters = double.Parse(busArgs[2]); double busCapacity = double.Parse(busArgs[3]); Bus bus = new Bus(busFuel, busLiters, busCapacity); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { string[] inputArgs = Console.ReadLine().Split(); string command = inputArgs[0]; string vehicleType = inputArgs[1]; double measures = double.Parse(inputArgs[2]); try { if (command == "Drive") { if (vehicleType == "Car") { Console.WriteLine(car.Drive(measures)); } else if (vehicleType == "Truck") { Console.WriteLine(truck.Drive(measures)); } else if (vehicleType == "Bus") { Console.WriteLine(bus.Drive(measures)); } } else if (command == "Refuel") { if (vehicleType == "Car") { car.Refuel(measures); } else if (vehicleType == "Truck") { truck.Refuel(measures); } else if (vehicleType == "Bus") { bus.Refuel(measures); } } else if (command == "DriveEmpty") { Console.WriteLine(bus.DriveEmpty(measures)); } } catch (Exception ex) { Console.WriteLine(ex.Message); } } Console.WriteLine(car); Console.WriteLine(truck); Console.WriteLine(bus); }
public static void Main(string[] args) { string inputCarInformation = Console.ReadLine(); var listOfCarInformation = inputCarInformation .Split(new[] { ' ' }) .ToList(); Car car = new Car(double.Parse(listOfCarInformation[1]), double.Parse(listOfCarInformation[2]), double.Parse(listOfCarInformation[3])); string inputTruckInformation = Console.ReadLine(); var listOfTruckInformation = inputTruckInformation .Split(new[] { ' ' }) .ToList(); Truck truck = new Truck(double.Parse(listOfTruckInformation[1]), double.Parse(listOfTruckInformation[2]), double.Parse(listOfTruckInformation[3])); string inputBusInformation = Console.ReadLine(); var listOfBusInformation = inputBusInformation .Split(new[] { ' ' }) .ToList(); Bus bus = new Bus(double.Parse(listOfBusInformation[1]), double.Parse(listOfBusInformation[2]), double.Parse(listOfBusInformation[3])); int repeat = int.Parse(Console.ReadLine()); for (int i = 0; i < repeat; i++) { string inputCommand = Console.ReadLine(); var vehicleCommand = inputCommand .Split(new[] { ' ' }) .ToList(); switch (vehicleCommand[0]) { case "Drive": if (vehicleCommand[1] == "Car") { Console.WriteLine(car.Drive(double.Parse(vehicleCommand[2]))); } else if (vehicleCommand[1] == "Truck") { Console.WriteLine(truck.Drive(double.Parse(vehicleCommand[2]))); } else if (vehicleCommand[1] == "Bus") { Console.WriteLine(bus.Drive(double.Parse(vehicleCommand[2]))); } break; case "Refuel": if (vehicleCommand[1] == "Car") { try { car.Refuel(double.Parse(vehicleCommand[2])); } catch (Exception ex) { Console.WriteLine(ex.Message); } } else if (vehicleCommand[1] == "Truck") { try { truck.Refuel(double.Parse(vehicleCommand[2])); } catch (Exception ex) { Console.WriteLine(ex.Message); } } else if (vehicleCommand[1] == "Bus") { try { bus.Refuel(double.Parse(vehicleCommand[2])); } catch (Exception ex) { Console.WriteLine(ex.Message); } } break; case "DriveEmpty": Console.WriteLine(bus.DriveEmpty(double.Parse(vehicleCommand[2]))); break; default: break; } } Console.WriteLine($"{car:f2}"); Console.WriteLine($"{truck:f2}"); Console.WriteLine($"{bus:f2}"); }
public static void Main() { string[] carInfo = Console.ReadLine() .Split(); double carFuel = double.Parse(carInfo[1]); double carFuelConsumption = double.Parse(carInfo[2]); double carFuelCapacity = double.Parse(carInfo[3]); var car = new Car(carFuel, carFuelConsumption, carFuelCapacity); string[] truckInfo = Console.ReadLine() .Split(); double truckFuel = double.Parse(truckInfo[1]); double truckFuelConsumption = double.Parse(truckInfo[2]); double truckFuelCapacity = double.Parse(truckInfo[3]); var truck = new Truck(truckFuel, truckFuelConsumption, truckFuelCapacity); string[] busInfo = Console.ReadLine() .Split(); double busFuel = double.Parse(busInfo[1]); double busFuelConsumption = double.Parse(busInfo[2]); double busFuelCapacity = double.Parse(busInfo[3]); var bus = new Bus(busFuel, busFuelConsumption, busFuelCapacity); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { string[] input = Console.ReadLine() .Split(); string command = input[0]; string type = input[1]; double value = double.Parse(input[2]); try { if (command == "Drive") { if (type == "Car") { car.Drive(value); } else if (type == "Truck") { truck.Drive(value); } else if (type == "Bus") { bus.Drive(value); } } else if (command == "Refuel") { if (type == "Car") { car.Refuel(value); } else if (type == "Truck") { truck.Refuel(value); } else if (type == "Bus") { bus.Refuel(value); } } else if (command == "DriveEmpty") { if (type == "Bus") { bus.DriveEmpty(value); } } } catch (Exception e) { Console.WriteLine(e.Message); } } Console.WriteLine(car); Console.WriteLine(truck); Console.WriteLine(bus); }
static void Main(string[] args) { // var carinput = Console.ReadLine().Split(' '); // var fuelAmount = double.Parse(carinput[1]); // var fuelConsumption = double.Parse(carinput[2]); // var tankCapacity = ParseTankCapacity(fuelAmount,double.Parse(carinput[3])); // IVehicle car = new Car(fuelAmount, fuelConsumption, tankCapacity); // // var truckInput = Console.ReadLine().Split(' '); // fuelAmount = double.Parse(truckInput[1]); // fuelConsumption = double.Parse(truckInput[2]); // tankCapacity = ParseTankCapacity(fuelAmount,double.Parse(truckInput[3])); // IVehicle truck = new Truck(fuelAmount, fuelConsumption,tankCapacity); // // var busInput = Console.ReadLine().Split(' '); // fuelAmount = double.Parse(busInput[1]); // fuelConsumption = double.Parse(busInput[2]); // tankCapacity = ParseTankCapacity(fuelAmount, double.Parse(busInput[3])); // Bus bus = new Bus(fuelAmount, fuelConsumption, tankCapacity); List<IVehicle> vehicles = new List<IVehicle>(); for(int i = 0; i < 3; i++) { var inputTokens = Console.ReadLine().Split(); var vehicleType = inputTokens[0]; var passedFuel = double.Parse(inputTokens[1]); var vehicleConsumption = double.Parse(inputTokens[2]); var vehicleTankCapacity = double.Parse(inputTokens[3]); var vehicleFuel = ParseFuel(passedFuel, vehicleTankCapacity); IVehicle vehicle=null; switch (vehicleType) { case "Car": vehicle = new Car(vehicleFuel, vehicleConsumption, vehicleTankCapacity); break; case "Truck": vehicle = new Truck(vehicleFuel, vehicleConsumption, vehicleTankCapacity); break; case "Bus": vehicle = new Bus(vehicleFuel, vehicleConsumption, vehicleTankCapacity); break; } vehicles.Add(vehicle); } var totalInputs = int.Parse(Console.ReadLine()); Car car = (Car)vehicles.Find(v => v.GetType().Name == "Car"); Truck truck = (Truck)vehicles.Find(v => v.GetType().Name == "Truck"); Bus bus = (Bus)vehicles.Find(v => v.GetType().Name == "Bus"); for (int i = 0; i< totalInputs; i++) { var inputLine = Console.ReadLine(); var inputTokens = inputLine.Split(' '); var command = inputTokens[0]; var vehicle = inputTokens[1]; var distanceOrAmount = double.Parse(inputTokens[2]); if(command == "Refuel" && distanceOrAmount <= 0) { Console.WriteLine("Fuel must be a positive number"); continue; } switch (command) { case "Drive": if(vehicle == "Car") { car.Drive(distanceOrAmount); } else if(vehicle == "Truck") { truck.Drive(distanceOrAmount); } else if(vehicle == "Bus") { bus.Drive(distanceOrAmount); } break; case "Refuel": if(vehicle == "Car") { car.Refuel(distanceOrAmount); } else if(vehicle == "Truck") { truck.Refuel(distanceOrAmount); } else if(vehicle == "Bus") { bus.Refuel(distanceOrAmount); } break; case "DriveEmpty": bus.DriveEmpty(distanceOrAmount); break; } } foreach(var vehicle in vehicles) { Console.WriteLine(vehicle); } }
static void Main(string[] args) { string[] carInfo = Console.ReadLine().Split(); string[] truckInfo = Console.ReadLine().Split(); string[] busInfo = Console.ReadLine().Split(); int n = int.Parse(Console.ReadLine()); double carFuel = double.Parse(carInfo[1]); double carFuelConsumption = double.Parse(carInfo[2]); double carTankCapacity = double.Parse(carInfo[3]); Vehicle car = new Car(carFuel, carFuelConsumption, carTankCapacity); double truckFuel = double.Parse(truckInfo[1]); double truckFuelConsumption = double.Parse(truckInfo[2]); double truckTankCapacity = double.Parse(truckInfo[3]); Vehicle truck = new Truck(truckFuel, truckFuelConsumption, truckTankCapacity); double busFuel = double.Parse(busInfo[1]); double busFuelConsumption = double.Parse(busInfo[2]); double busTankCapacity = double.Parse(busInfo[3]); Bus bus = new Bus(busFuel, busFuelConsumption, busTankCapacity); for (int i = 0; i < n; i++) { string[] cmdParts = Console.ReadLine().Split(); string command = cmdParts[0]; string typeVehicle = cmdParts[1]; double distance = double.Parse(cmdParts[2]); double fuel = distance; if (command == "Drive") { if (typeVehicle == "Car") { car.Drive(distance); } else if (typeVehicle == "Truck") { truck.Drive(distance); } else { bus.Drive(distance); } } else if (command == "Refuel") { try { if (typeVehicle == "Car") { car.Refuel(fuel); } else if (typeVehicle == "Truck") { truck.Refuel(fuel); } else { bus.Refuel(fuel); } } catch (ArgumentException ex) { Console.WriteLine(ex.Message); } } else if (command == "DriveEmpty" && typeVehicle == "Bus") { bus.DriveEmpty(fuel); } Console.WriteLine($"Car: {car.FuelQuantity:F2}"); Console.WriteLine($"Truck: {truck.FuelQuantity:F2}"); Console.WriteLine($"Bus: {bus.FuelQuantity:F2}"); } // 75/100? }
static void Main() { string[] carInfo = Console.ReadLine().Split(); string[] truckInfo = Console.ReadLine().Split(); string[] busInfo = Console.ReadLine().Split(); int count = int.Parse(Console.ReadLine()); double carFuel = double.Parse(carInfo[1]); double carConsumption = double.Parse(carInfo[2]); double carTank = double.Parse(carInfo[3]); double truckFuel = double.Parse(truckInfo[1]); double truckConsumption = double.Parse(truckInfo[2]); double truckTank = double.Parse(truckInfo[3]); double busFuel = double.Parse(busInfo[1]); double busConsumption = double.Parse(busInfo[2]); double busTank = double.Parse(busInfo[3]); Car car = new Car(carFuel, carConsumption, carTank); Truck truck = new Truck(truckFuel, truckConsumption, truckTank); Bus bus = new Bus(busFuel, busConsumption, busTank); for (int i = 0; i < count; i++) { string[] commandLine = Console.ReadLine().Split(); string command = commandLine[0]; string type = commandLine[1]; switch (type) { case "Car": if (command == "Drive") { double distance = double.Parse(commandLine[2]); Console.WriteLine(car.Drive(distance)); } else if (command == "Refuel") { double fuel = double.Parse(commandLine[2]); car.Refuel(fuel); } break; case "Truck": if (command == "Drive") { double distance = double.Parse(commandLine[2]); Console.WriteLine(truck.Drive(distance)); } else if (command == "Refuel") { double fuel = double.Parse(commandLine[2]); truck.Refuel(fuel); } break; case "Bus": if (command == "Drive") { double distance = double.Parse(commandLine[2]); Console.WriteLine(bus.Drive(distance)); } else if (command == "Refuel") { double fuel = double.Parse(commandLine[2]); bus.Refuel(fuel); } else if (command == "DriveEmpty") { double distance = double.Parse(commandLine[2]); Console.WriteLine(bus.DriveEmpty(distance)); } break; } } Console.WriteLine(car); Console.WriteLine(truck); Console.WriteLine(bus); }
public static void Main(string[] args) { var input = Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries); Car car = new Car(double.Parse(input[1]), double.Parse(input[2]), double.Parse(input[3])); input = Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries); Truck truck = new Truck(double.Parse(input[1]), double.Parse(input[2]), double.Parse(input[3])); input = Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries); Bus bus = new Bus(double.Parse(input[1]), double.Parse(input[2]), double.Parse(input[3])); var commands = int.Parse(Console.ReadLine()); for (int i = 0; i < commands; i++) { var tokens = Console.ReadLine().Split(' ', StringSplitOptions.RemoveEmptyEntries); try { if (tokens[0] == "Drive") { var distance = double.Parse(tokens[2]); if (tokens[1] == "Car") { Console.WriteLine(car.Drive(distance)); } else if (tokens[1] == "Truck") { Console.WriteLine(truck.Drive(distance)); } else { Console.WriteLine(bus.Drive(distance)); } } else if (tokens[0] == "Refuel") { var fuelAmount = double.Parse(tokens[2]); if (tokens[1] == "Car") { car.Refuel(fuelAmount); } else if (tokens[1] == "Truck") { truck.Refuel(fuelAmount); } else { bus.Refuel(fuelAmount); } } else { var distance = double.Parse(tokens[2]); Console.WriteLine(bus.DriveEmpty(distance)); } } catch (ArgumentException ex) { Console.WriteLine(ex.Message.ToString()); } } Console.WriteLine(car.ToString()); Console.WriteLine(truck.ToString()); Console.WriteLine(bus.ToString()); }
public void Run() { Car car = CreateCar(); Truck truck = CreateTruck(); Bus bus = CreateBus(); int commandsCount = int.Parse(Console.ReadLine()); for (int i = 0; i < commandsCount; i++) { try { string[] commandArgs = Console.ReadLine() .Split(" ", StringSplitOptions.RemoveEmptyEntries); string command = commandArgs[0]; string vechicleType = commandArgs[1]; if (command == "Drive") { double distance = double.Parse(commandArgs[2]); if (vechicleType == "Car") { Console.WriteLine(car.Drive(distance)); } else if (vechicleType == "Truck") { Console.WriteLine(truck.Drive(distance)); } else if (vechicleType == "Bus") { Console.WriteLine(bus.Drive(distance)); } } else if (command == "DriveEmpty") { double distance = double.Parse(commandArgs[2]); Console.WriteLine(bus.DriveEmpty(distance)); } else if (command == "Refuel") { double fuelAmount = double.Parse(commandArgs[2]); if (vechicleType == "Car") { car.Refuel(fuelAmount); } else if (vechicleType == "Truck") { truck.Refuel(fuelAmount); } else if (vechicleType == "Bus") { bus.Refuel(fuelAmount); } } } catch (ArgumentException ae) { Console.WriteLine(ae.Message); continue; } } Console.WriteLine(car.ToString()); Console.WriteLine(truck.ToString()); Console.WriteLine(bus.ToString()); }
private static void Main() { string[] carItems = Console.ReadLine() .Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); double carFuelQuantity = double.Parse(carItems[1]); double carFuelConsumption = double.Parse(carItems[2]); double carTankCapacity = double.Parse(carItems[3]); Car car = new Car(carFuelQuantity, carFuelConsumption, carTankCapacity); string[] truckItems = Console.ReadLine() .Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); double truckFuelQuantity = double.Parse(truckItems[1]); double truckFuelConsumption = double.Parse(truckItems[2]); double truckTankCapacity = double.Parse(truckItems[3]); Truck truck = new Truck(truckFuelQuantity, truckFuelConsumption, truckTankCapacity); string[] busItems = Console.ReadLine() .Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); double busFuelQuantity = double.Parse(busItems[1]); double busFuelConsumption = double.Parse(busItems[2]); double busTankCapacity = double.Parse(busItems[3]); Bus bus = new Bus(busFuelQuantity, busFuelConsumption, busTankCapacity); int count = int.Parse(Console.ReadLine()); for (int i = 0; i < count; i++) { try { string[] commandItems = Console.ReadLine() .Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); string command = commandItems[0]; string type = commandItems[1]; if (command == "Drive") { double distance = double.Parse(commandItems[2]); if (type == "Car") { Console.WriteLine(car.Drive(distance)); } else if (type == "Truck") { Console.WriteLine(truck.Drive(distance)); } else if (type == "Bus") { Console.WriteLine(bus.Drive(distance)); } } else if (command == "Refuel") { double fuel = double.Parse(commandItems[2]); if (type == "Car") { car.Refuel(fuel); } else if (type == "Truck") { truck.Refuel(fuel); } else if (type == "Bus") { bus.Refuel(fuel); } } else if (command == "DriveEmpty") { double distance = double.Parse(commandItems[2]); Console.WriteLine(bus.DriveEmpty(distance)); } } catch (Exception ex) { Console.WriteLine(ex.Message); } } Console.WriteLine(car.ToString()); Console.WriteLine(truck.ToString()); Console.WriteLine(bus.ToString()); }
static void Main(string[] args) { List <Vehicle> vehicle = new List <Vehicle>(); for (int i = 1; i <= 3; i++) { string[] vehicleArgs = Console.ReadLine().Split(); double fuel = double.Parse(vehicleArgs[1]); double liters = double.Parse(vehicleArgs[2]); double tankCapacity = double.Parse(vehicleArgs[3]); Vehicle currentVehicle = null; if (i == 1) { currentVehicle = new Car(fuel, liters, tankCapacity); } else if (i == 2) { currentVehicle = new Truck(fuel, liters, tankCapacity); } else if (i == 3) { currentVehicle = new Bus(fuel, liters, tankCapacity); } vehicle.Add(currentVehicle); } int line = int.Parse(Console.ReadLine()); for (int i = 0; i < line; i++) { string[] inputArgs = Console.ReadLine().Split(); string command = inputArgs[0]; string vehicles = inputArgs[1]; double value = double.Parse(inputArgs[2]); var currentVehcle = vehicle.FirstOrDefault(x => x.GetType().Name == vehicles); if (command == "Drive") { Console.WriteLine(currentVehcle.Drive(value)); } else if (command == "DriveEmpty") { Bus currenBus = (Bus)vehicle.FirstOrDefault(x => x.GetType().Name == vehicles); Console.WriteLine(currenBus.DriveEmpty(value)); } else if (command == "Refuel") { try { currentVehcle.Refuel(value); } catch (Exception ex) { Console.WriteLine(ex.Message); } } } foreach (var item in vehicle) { Console.WriteLine(item); } }
static void Main(string[] args) { string[] carArgs = Parser(); string[] truckArgs = Parser(); string[] busArgs = Parser(); Vehicle car = new Car(double.Parse(carArgs[1]), double.Parse(carArgs[2]), double.Parse(carArgs[3])); Vehicle truck = new Truck(double.Parse(truckArgs[1]), double.Parse(truckArgs[2]), double.Parse(truckArgs[3])); Bus bus = new Bus(double.Parse(busArgs[1]), double.Parse(busArgs[2]), double.Parse(busArgs[3])); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { try { string[] data = Console.ReadLine().Split(); if (data[1] == "Car") { if (data[0] == "Drive") { Console.WriteLine(car.Drive(double.Parse(data[2]))); } else { car.Refuel(double.Parse(data[2])); } } else if (data[1] == "Truck") { if (data[0] == "Drive") { Console.WriteLine(truck.Drive(double.Parse(data[2]))); } else { truck.Refuel(double.Parse(data[2])); } } else if (data[1] == "Bus") { if (data[0] == "Drive") { Console.WriteLine(bus.Drive(double.Parse(data[2]))); } else if (data[0] == "DriveEmpty") { Console.WriteLine(bus.DriveEmpty(double.Parse(data[2])), "Bus", double.Parse(data[2])); } else { bus.Refuel(double.Parse(data[2])); } } } catch (Exception ex) { Console.WriteLine(ex.Message); } } Console.WriteLine($"Car: {car.FuelQuantity:f2}"); Console.WriteLine($"Truck: {truck.FuelQuantity:f2}"); Console.WriteLine($"Bus: {bus.FuelQuantity:f2}"); }
static void Main(string[] args) { List <Vehicle> vehicles = new List <Vehicle>(); for (int i = 1; i <= 3; i++) { string[] vehicleArgs = Console.ReadLine().Split(); double fuelQuantity = double.Parse(vehicleArgs[1]); double fuelConsumtion = double.Parse(vehicleArgs[2]); int tanckCapacity = int.Parse(vehicleArgs[3]); Vehicle vehicle = null; if (i == 1) { vehicle = new Car(fuelQuantity, fuelConsumtion, tanckCapacity); } else if (i == 2) { vehicle = new Truck(fuelQuantity, fuelConsumtion, tanckCapacity); } else if (i == 3) { vehicle = new Bus(fuelQuantity, fuelConsumtion, tanckCapacity); } vehicles.Add(vehicle); } int commandCount = int.Parse(Console.ReadLine()); for (int i = 0; i < commandCount; i++) { string[] commandArgs = Console.ReadLine().Split(); string command = commandArgs[0]; string type = commandArgs[1]; if (command == "Drive") { double distance = double.Parse(commandArgs[2]); Vehicle vehicle = vehicles.FirstOrDefault(x => x.GetType().Name == type); Console.WriteLine(vehicle.Drive(distance)); } else if (command == "Refuel") { double fuelAmount = double.Parse(commandArgs[2]); Vehicle vehicle = vehicles.FirstOrDefault(x => x.GetType().Name == type); try { vehicle.Refuel(fuelAmount); } catch (Exception ex) { Console.WriteLine(ex.Message); } } else { double distance = double.Parse(commandArgs[2]); Bus vehicle = (Bus)vehicles.FirstOrDefault(x => x.GetType().Name == type); Console.WriteLine(vehicle.DriveEmpty(distance)); } } Console.WriteLine(string.Join(Environment.NewLine, vehicles)); }
static void Main() { string[] carData = Console.ReadLine().Split(); string[] truckData = Console.ReadLine().Split(); string[] busData = Console.ReadLine().Split(); double carFuelQuantity = double.Parse(carData[1]); double carFuelConsumption = double.Parse(carData[2]); double carTankCapacity = double.Parse(carData[3]); double truckFuelQuantity = double.Parse(truckData[1]); double truckFuelConsumption = double.Parse(truckData[2]); double truckTankCapacity = double.Parse(truckData[3]); double busFuelQuantity = double.Parse(busData[1]); double busFuelConsumption = double.Parse(busData[2]); double busFuelTankCapacity = double.Parse(busData[3]); Car car = new Car(carFuelQuantity, carFuelConsumption, carTankCapacity); Truck truck = new Truck(truckFuelQuantity, truckFuelConsumption, truckTankCapacity); Bus bus = new Bus(busFuelQuantity, busFuelConsumption, busFuelTankCapacity); int countLines = int.Parse(Console.ReadLine()); for (int i = 0; i < countLines; i++) { string[] items = Console.ReadLine().Split(); string command = items[0]; string typeVehicle = items[1]; double value = double.Parse(items[2]); if (typeVehicle == "Car") { if (command == "Drive") { Console.WriteLine(car.Drive(value)); } else { car.Refuel(value); } } else if (typeVehicle == "Truck") { if (command == "Drive") { Console.WriteLine(truck.Drive(value)); } else { truck.Refuel(value); } } else if (typeVehicle == "Bus") { if (command == "DriveEmpty") { Console.WriteLine(bus.DriveEmpty(value)); } else if (command == "Drive") { Console.WriteLine(bus.Drive(value)); } else { bus.Refuel(value); } } } Console.WriteLine($"Car: {Math.Round(car.FuelQuantity, 2):f2}"); Console.WriteLine($"Truck: {Math.Round(truck.FuelQuantity, 2):f2}"); Console.WriteLine($"Bus: {Math.Round(bus.FuelQuantity, 2):f2}"); }
public void Run(List <Vehicle> vehicles) { int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { string[] commandArgs = Console.ReadLine().Split(); string command = commandArgs[0]; string vehicle = commandArgs[1]; if (command == "Drive") { double distance = double.Parse(commandArgs[2]); if (vehicle == "Car") { Car car = (Car)vehicles.FirstOrDefault(x => x.GetType().Name == nameof(Car)); car.Drive(distance); } else if (vehicle == "Truck") { Truck truck = (Truck)vehicles.FirstOrDefault(x => x.GetType().Name == nameof(Truck)); Console.WriteLine(truck.Drive(distance)); } else if (vehicle == "Bus") { Bus bus = (Bus)vehicles.FirstOrDefault(x => x.GetType().Name == nameof(Bus)); Console.WriteLine(bus.Drive(distance)); } } else if (command == "DriveEmpty") { Bus bus = (Bus)vehicles.FirstOrDefault(x => x.GetType().Name == nameof(Bus)); double distance = double.Parse(commandArgs[2]); Console.WriteLine(bus.DriveEmpty(distance)); } else if (command == "Refuel") { try { if (vehicle == "Car") { Car car = (Car)vehicles.FirstOrDefault(x => x.GetType().Name == nameof(Car)); double fuel = double.Parse(commandArgs[2]); car.Refuel(fuel); } else if (vehicle == "Truck") { Truck truck = (Truck)vehicles.FirstOrDefault(x => x.GetType().Name == nameof(Truck)); double fuel = double.Parse(commandArgs[2]); truck.Refuel(fuel); } else if (vehicle == "Bus") { Bus bus = (Bus)vehicles.FirstOrDefault(x => x.GetType().Name == nameof(Bus)); double fuel = double.Parse(commandArgs[2]); bus.Refuel(fuel); } } catch (Exception ex) { Console.WriteLine(ex.Message); } } } foreach (var vehice in vehicles) { Console.WriteLine(vehice); } }
public static void Main() { string[] carInfo = Console.ReadLine().Split(); string[] truckInfo = Console.ReadLine().Split(); string[] busInfo = Console.ReadLine().Split(); Vehicle car = new Car(double.Parse(carInfo[1]), double.Parse(carInfo[2]), int.Parse(carInfo[3])); Vehicle truck = new Truck(double.Parse(truckInfo[1]), double.Parse(truckInfo[2]), int.Parse(truckInfo[3])); Vehicle bus = new Bus(double.Parse(busInfo[1]), double.Parse(busInfo[2]), int.Parse(busInfo[3])); int commands = int.Parse(Console.ReadLine()); for (int i = 0; i < commands; i++) { string[] token = Console.ReadLine().Split(); try { if (token[0] == "Drive") { if (token[1] == "Car") { Console.WriteLine(car.Drive(double.Parse(token[2]))); } else if (token[1] == "Truck") { Console.WriteLine(truck.Drive(double.Parse(token[2]))); } else if (token[1] == "Bus") { Console.WriteLine(bus.Drive(double.Parse(token[2]))); } } else if (token[0] == "Refuel") { if (token[1] == "Car") { car.Refuel(double.Parse(token[2])); } else if (token[1] == "Truck") { truck.Refuel(double.Parse(token[2])); } else if (token[1] == "Bus") { bus.Refuel(double.Parse(token[2])); } } else if (token[0] == "DriveEmpty") { Bus emptyBus = bus as Bus; Console.WriteLine(emptyBus.DriveEmpty(double.Parse(token[2]))); } } catch (ArgumentException e) { Console.WriteLine(e.Message); } } Console.WriteLine($"Car: {car.FuelQuantity:f2}"); Console.WriteLine($"Truck: {truck.FuelQuantity:f2}"); Console.WriteLine($"Bus: {bus.FuelQuantity:f2}"); }
public static void Main(string[] args) { string[] carInfo = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); double carFuelconsumption = double.Parse(carInfo[1]); double carLitersPerKm = double.Parse(carInfo[2]); int carCapacity = int.Parse(carInfo[3]); Car car = new Car(carFuelconsumption, carLitersPerKm, carCapacity); if (carCapacity > carFuelconsumption) { car.FuelConsumption = 0; } string[] truckInfo = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); double truckFuelconsumption = double.Parse(truckInfo[1]); double truckLitersPerKm = double.Parse(truckInfo[2]); int truckCapacity = int.Parse(truckInfo[3]); Truck truck = new Truck(truckFuelconsumption, truckLitersPerKm, truckCapacity); if (truckCapacity > truckFuelconsumption) { truck.FuelConsumption = 0; } string[] busInfo = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); double busFuelconsumption = double.Parse(busInfo[1]); double busLitersPerKm = double.Parse(busInfo[2]); int busCapacity = int.Parse(busInfo[3]); Bus bus = new Bus(busFuelconsumption, busLitersPerKm, busCapacity); if (busCapacity > busFuelconsumption) { bus.FuelConsumption = 0; } int commandsCount = int.Parse(Console.ReadLine()); for (int i = 0; i < commandsCount; i++) { string[] input = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); string command = input[0]; string vehicle = input[1]; double amount = double.Parse(input[2]); if (command == "Drive") { if (vehicle == nameof(Car)) { car.Drive(amount); } else if (vehicle == nameof(Truck)) { truck.Drive(amount); } else if (vehicle == nameof(Bus)) { bus.Drive(amount); } } else if (command == "DriveEmpty") { bus.DriveEmpty(amount); } else if (command == "Refuel") { if (vehicle == nameof(Car)) { car.Refuel(amount); } else if (vehicle == nameof(Truck)) { truck.Refuel(amount); } else if (vehicle == nameof(bus)) { bus.Refuel(amount); } } } Console.WriteLine($"{nameof(Car)}: {car.FuelQuantity:f2}"); Console.WriteLine($"{nameof(Truck)}: {truck.FuelQuantity:f2}"); Console.WriteLine($"{nameof(Bus)}: {bus.FuelQuantity:f2}"); }
static void Main(string[] args) { var carData = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); double fuelQuantity = double.Parse(carData[1]); double fuelConsumption = double.Parse(carData[2]); double tankCapacity = double.Parse(carData[3]); Car car = new Car(fuelQuantity, fuelConsumption, tankCapacity); var truckData = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); fuelQuantity = double.Parse(truckData[1]); fuelConsumption = double.Parse(truckData[2]); tankCapacity = double.Parse(truckData[3]); Truck truck = new Truck(fuelQuantity, fuelConsumption, tankCapacity); var busData = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); fuelQuantity = double.Parse(busData[1]); fuelConsumption = double.Parse(busData[2]); tankCapacity = double.Parse(busData[3]); Bus bus = new Bus(fuelQuantity, fuelConsumption, tankCapacity); int num = int.Parse(Console.ReadLine()); for (int i = 0; i < num; i++) { var cmd = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); string command = cmd[0]; if (command == "Drive") { string type = cmd[1]; double km = double.Parse(cmd[2]); if (type == "Car") { car.Drive(km); } else if (type == "Truck") { truck.Drive(km); } else if (type == "Bus") { bus.Drive(km); } } else if (command == "DriveEmpty") { string type = cmd[1]; double km = double.Parse(cmd[2]); if (type == "Bus") { bus.DriveEmpty(km); } } else if (command == "Refuel") { string type = cmd[1]; double litters = double.Parse(cmd[2]); if (type == "Car") { car.Refuel(litters); } else if (type == "Truck") { truck.Refuel(litters); } else if (type == "Bus") { bus.Refuel(litters); } } } //Console.WriteLine($"Car: {car.FuelQuantity:F2}"); //Console.WriteLine($"Truck: {truck.FuelQuantity:F2}"); //Console.WriteLine($""); Console.WriteLine(car.ToString()); Console.WriteLine(truck.ToString()); Console.WriteLine(bus.ToString()); }
public static void Main(string[] args) { string[] carTokens = Console.ReadLine().Split(); double fuelQuantity = double.Parse(carTokens[1]); double fuelConsumpion = double.Parse(carTokens[2]); double tankCapacity = double.Parse(carTokens[3]); Car car = new Car(fuelQuantity, fuelConsumpion, tankCapacity); string[] truckTokens = Console.ReadLine().Split(); fuelQuantity = double.Parse(truckTokens[1]); fuelConsumpion = double.Parse(truckTokens[2]); tankCapacity = double.Parse(truckTokens[3]); Truck truck = new Truck(fuelQuantity, fuelConsumpion, tankCapacity); string[] busTokens = Console.ReadLine().Split(); fuelQuantity = double.Parse(busTokens[1]); fuelConsumpion = double.Parse(busTokens[2]); tankCapacity = double.Parse(busTokens[3]); Bus bus = new Bus(fuelQuantity, fuelConsumpion, tankCapacity); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { string[] command = Console.ReadLine().Split(); string typeOfCommand = command[0]; string typeOfVehilce = command[1]; if (typeOfCommand == "Drive") { double distance = double.Parse(command[2]); if (typeOfVehilce == "Car") { Console.WriteLine(car.Drive(distance)); } else if (typeOfVehilce == "Truck") { Console.WriteLine(truck.Drive(distance)); } else { Console.WriteLine(bus.Drive(distance)); } } else if (typeOfCommand == "Refuel") { try { double fuelAmount = double.Parse(command[2]); if (typeOfVehilce == "Car") { car.Refuel(fuelAmount); } else if (typeOfVehilce == "Truck") { truck.Refuel(fuelAmount); } else { bus.Refuel(fuelAmount); } } catch (Exception ex) { Console.WriteLine(ex.Message); } } else { double distance = double.Parse(command[2]); Console.WriteLine(bus.DriveEmpty(distance)); } } Console.WriteLine(car); Console.WriteLine(truck); Console.WriteLine(bus); }
static void Main(string[] args) { string[] carData = Console.ReadLine() .Split(); //Car 15 0.3 Car car = new Car(double.Parse(carData[1]), double.Parse(carData[2]), double.Parse(carData[3])); string[] truckData = Console.ReadLine() .Split(); Truck truck = new Truck(double.Parse(truckData[1]), double.Parse(truckData[2]), double.Parse(truckData[3])); string[] busData = Console.ReadLine() .Split(); Bus bus = new Bus(double.Parse(busData[1]), double.Parse(busData[2]), double.Parse(busData[3])); int commandsCount = int.Parse(Console.ReadLine()); for (int i = 0; i < commandsCount; i++) { string[] currentCmd = Console.ReadLine() .Split(); string type = currentCmd[1]; string command = currentCmd[0]; double amount = double.Parse(currentCmd[2]); if (command == "Refuel") { if (type == nameof(Truck)) { truck.Refuel(amount); } else if (type == nameof(Car)) { car.Refuel(amount); } else if (type == nameof(Bus)) { bus.Refuel(amount); } } else if (command == "Drive") { if (type == nameof(Truck)) { Console.WriteLine(truck.Drive(amount)); } else if (type == nameof(Car)) { Console.WriteLine(car.Drive(amount)); } else if (type == nameof(Bus)) { Console.WriteLine(bus.Drive(amount)); } } else if (command == "DriveEmpty") { Console.WriteLine(bus.DriveEmpty(amount)); } } Console.WriteLine(car); Console.WriteLine(truck); Console.WriteLine(bus); }
static void Main(string[] args) { var carInfo = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); var car = new Car(double.Parse(carInfo[1]), double.Parse(carInfo[2]), double.Parse(carInfo[3])); var truckInfo = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); var truck = new Truck(double.Parse(truckInfo[1]), double.Parse(truckInfo[2]), double.Parse(truckInfo[3])); var busInfo = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); var bus = new Bus(double.Parse(busInfo[1]), double.Parse(busInfo[2]), double.Parse(busInfo[3])); var n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { var command = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); if (command[0] == "Drive") { switch (command[1]) { case "Car": car.Drive(double.Parse(command[2])); break; case "Truck": truck.Drive(double.Parse(command[2])); break; case "Bus": bus.Drive(double.Parse(command[2])); break; } } else if (command[0] == "Refuel") { if (double.Parse(command[2]) <= 0) { Console.WriteLine("Fuel must be a positive number"); } else { switch (command[1]) { case "Car": car.Refuel(double.Parse(command[2])); break; case "Truck": truck.Refuel(double.Parse(command[2])); break; case "Bus": bus.Refuel(double.Parse(command[2])); break; } } } else if (command[0] == "DriveEmpty") { bus.DriveEmpty(double.Parse(command[2])); } } Console.WriteLine(car); Console.WriteLine(truck); Console.WriteLine(bus); }
static void Main(string[] args) { string[] carI = Console.ReadLine().Split(); Car car = new Car(double.Parse(carI[1]), double.Parse(carI[2]), double.Parse(carI[3])); string[] truckI = Console.ReadLine().Split(); Truck truck = new Truck(double.Parse(truckI[1]), double.Parse(truckI[2]), double.Parse(carI[3])); string[] busI = Console.ReadLine().Split(); Bus bus = new Bus(double.Parse(busI[1]), double.Parse(busI[2]), double.Parse(busI[3])); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { string[] command = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); string action = command[0]; string vehicle = command[1]; double kmOrLt = double.Parse(command[2]); switch (action) { case "Drive": if (vehicle == "Car") { car.Drive(kmOrLt); } else if (vehicle == "Truck") { truck.Drive(kmOrLt); } else if (vehicle == "Bus") { bus.Drive(kmOrLt); } break; case "DriveEmpty": if (vehicle == "Bus") { bus.DriveEmpty(kmOrLt); } break; case "Refuel": if (vehicle == "Car") { car.Refuel(kmOrLt); } else if (vehicle == "Truck") { truck.Refuel(kmOrLt); } else if (vehicle == "Bus") { bus.Refuel(kmOrLt); } break; default: break; } } Console.WriteLine($"Car: {car.FuelQuantity:f2}"); Console.WriteLine($"Truck: {truck.FuelQuantity:f2}"); Console.WriteLine($"Bus: {bus.FuelQuantity:f2}"); }
static void Main(string[] args) { string[] carInfo = ConsoleRead(); string[] truckInfo = ConsoleRead(); string[] busInfo = ConsoleRead(); Car car = CreateCar(carInfo); Truck truck = CreateTruck(truckInfo); Bus bus = CreateBus(busInfo); int numberofCommands = int.Parse(Console.ReadLine()); for (int i = 0; i < numberofCommands; i++) { string[] commandInfo = ConsoleRead(); string command = commandInfo[0]; double distance = double.Parse(commandInfo[2]); double litres = double.Parse(commandInfo[2]); string type = commandInfo[1]; switch (command) { case "Drive": switch (type) { case "Car": car.Drive(distance); break; case "Truck": truck.Drive(distance); break; case "Bus": bus.Drive(distance); break; } break; case "Refuel": switch (type) { case "Car": car.Refuel(litres); break; case "Truck": truck.Refuel(litres); break; case "Bus": bus.Refuel(litres); break; } break; case "DriveEmpty": bus.DriveEmpty(distance); break; } } Console.WriteLine(car); Console.WriteLine(truck); Console.WriteLine(bus); }
static void Main(string[] args) { var carDetails = Console.ReadLine().Split(); var truckDetails = Console.ReadLine().Split(); var busDetails = Console.ReadLine().Split(); var car = new Car(double.Parse(carDetails[1]), double.Parse(carDetails[2]), double.Parse(carDetails[3])); var truck = new Truck(double.Parse(truckDetails[1]), double.Parse(truckDetails[2]), double.Parse(truckDetails[3])); var bus = new Bus(double.Parse(busDetails[1]), double.Parse(busDetails[2]), double.Parse(busDetails[3])); var commands = int.Parse(Console.ReadLine()); for (int i = 0; i < commands; i++) { var command = Console.ReadLine().Split(); var vehicleType = command[1]; try { if (command[0] == "Drive") { var distance = double.Parse(command[2]); if (vehicleType == "Car") { Console.WriteLine(car.Drive(distance)); } else if (vehicleType == "Truck") { Console.WriteLine(truck.Drive(distance)); } else if (vehicleType == "Bus") { Console.WriteLine(bus.Drive(distance)); } } else if (command[0] == "Refuel") { var fuel = double.Parse(command[2]); if (vehicleType == "Car") { car.Refuel(fuel); } else if (vehicleType == "Truck") { truck.Refuel(fuel); } else if (vehicleType == "Bus") { bus.Refuel(fuel); } } else if (command[0] == "DriveEmpty") { var distance = double.Parse(command[2]); Console.WriteLine(bus.DriveEmpty(distance)); } } catch (Exception ex) { Console.WriteLine(ex.Message); } } Console.WriteLine(car.ToString()); Console.WriteLine(truck.ToString()); Console.WriteLine(bus.ToString()); }