static void Main(string[] args) { List <Car> cars = new List <Car>(); int numberOfCar = int.Parse(Console.ReadLine()); for (int i = 0; i < numberOfCar; i++) { string[] carInformation = Console.ReadLine().Split(" ", StringSplitOptions.RemoveEmptyEntries); string model = carInformation[0]; int engineSpeed = int.Parse(carInformation[1]); int enginePower = int.Parse(carInformation[2]); Engine engine = new Engine(engineSpeed, enginePower); int cargoWeight = int.Parse(carInformation[3]); string cargoType = carInformation[4]; Cargo cargo = new Cargo(cargoWeight, cargoType); Tire[] tires = new Tire[4]; for (int j = 0; j < tires.Length; j++) { double tirePressure = double.Parse(carInformation[5 + 2 * j]); int tireAge = int.Parse(carInformation[6 + 2 * j]); Tire tire = new Tire(tirePressure, tireAge); tires[j] = tire; } Car currenCar = new Car(model, engine, cargo, tires); cars.Add(currenCar); } string typeCargo = Console.ReadLine(); if (typeCargo == "fragile") { foreach (Car car in cars.Where(x => x.Cargo.CargoType == typeCargo).Where(x => x.Tires.Any(t => t.TirePressure < 1))) { Console.WriteLine(car.Model); } } else { foreach (Car car in cars.Where(x => x.Cargo.CargoType == typeCargo).Where(x => x.Engine.Power > 250)) { Console.WriteLine(car.Model); } } }
private static void CreateCars(List <Car> cars) { var carsAmount = int.Parse(Console.ReadLine()); for (int i = 0; i < carsAmount; i++) { var carArgs = Console.ReadLine().Split(); var speed = int.Parse(carArgs[1]); var power = int.Parse(carArgs[2]); var engine = new Engine(speed, power); var weight = int.Parse(carArgs[3]); var type = carArgs[4]; var cargo = new Cargo(weight, type); var tires = new List <Tire>(4); for (int index = 5; index < carArgs.Length; index += 2) { var pressure = double.Parse(carArgs[index]); var age = int.Parse(carArgs[index + 1]); var tire = new Tire(pressure, age); tires.Add(tire); } var model = carArgs[0]; var car = new Car(model, engine, cargo, tires); cars.Add(car); } }