public static void Main() { int numberOfCars = int.Parse(Console.ReadLine()); var cars = new List <Car>(); for (int index = 0; index < numberOfCars; index++) { var carInfo = Console.ReadLine().Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); string model = carInfo[0]; int engineSpeed = int.Parse(carInfo[1]); int enginePower = int.Parse(carInfo[2]); int cargoWeight = int.Parse(carInfo[3]); string cargoType = carInfo[4]; double tire1Pressure = double.Parse(carInfo[5]); int tire1Age = int.Parse(carInfo[6]); double tire2Pressure = double.Parse(carInfo[7]); int tire2Age = int.Parse(carInfo[8]); double tire3Pressure = double.Parse(carInfo[9]); int tire3Age = int.Parse(carInfo[10]); double tire4Pressure = double.Parse(carInfo[11]); int tire4Age = int.Parse(carInfo[12]); Engine engine = new Engine(engineSpeed, enginePower); Cargo cargo = new Cargo(cargoWeight, cargoType); Tire[] tires = new Tire[4]; tires[0] = new Tire(tire1Pressure, tire1Age); tires[1] = new Tire(tire2Pressure, tire2Age); tires[2] = new Tire(tire3Pressure, tire3Age); tires[3] = new Tire(tire4Pressure, tire4Age); Car car = new Car(model, engine, cargo, tires); cars.Add(car); } string command = Console.ReadLine(); if (command == "fragile") { cars .Where(c => c.Cargo.Type == "fragile" && c.Tires.Any(t => t.Pressure < 1)) .ToList() .ForEach(c => Console.WriteLine($"{c.Model}")); } else { cars .Where(c => c.Cargo.Type == "flamable" && c.Engine.Power > 250) .ToList() .ForEach(c => Console.WriteLine($"{c.Model}")); } }
static void Main(string[] args) { int n = int.Parse(Console.ReadLine()); List <Car> cars = new List <Car>(); string input; for (int i = 0; i < n; i++) { input = Console.ReadLine(); var tokens = input.Split(); string model = tokens[0]; Engine engine = new Engine(int.Parse(tokens[1]), int.Parse(tokens[2])); Cargo cargo = new Cargo(int.Parse(tokens[3]), tokens[4]); List <Tire> tires = new List <Tire>(); string[] tiresString = tokens.Skip(5).ToArray(); for (int b = 0; b < tiresString.Length; b += 2) { double pressure = double.Parse(tiresString[b]); int age = int.Parse(tiresString[b + 1]); Tire tire = new Tire(age, pressure); tires.Add(tire); } cars.Add(new Car(model, engine, cargo, tires)); } input = Console.ReadLine(); switch (input) { case "fragile": var output = cars.Where(c => c.Cargo.Type == "fragile" && c.Tires.Any(p => p.Pressure < 1)) .ToList(); output.ForEach(m => Console.WriteLine(m.Model)); break; case "flamable": cars.Where(c => c.Cargo.Type == "flamable" && c.Engine.Power > 250) .ToList() .ForEach(m => Console.WriteLine(m.Model)); break; default: break; } }
static void Main() { var numbersOfCars = int.Parse(Console.ReadLine()); var cars = new List <Car>(); for (int i = 0; i < numbersOfCars; i++) { var carInfo = Console.ReadLine().Split(); var model = carInfo[0]; var engine = new Engine(int.Parse(carInfo[1]), int.Parse(carInfo[2])); var cargo = new Cargo(int.Parse(carInfo[3]), carInfo[4]); var tires = new Tire[] { new Tire(double.Parse(carInfo[5]), int.Parse(carInfo[6])), new Tire(double.Parse(carInfo[7]), int.Parse(carInfo[8])), new Tire(double.Parse(carInfo[9]), int.Parse(carInfo[10])), new Tire(double.Parse(carInfo[11]), int.Parse(carInfo[12])) }; var car = new Car(model, engine, cargo, tires); cars.Add(car); } var command = Console.ReadLine(); if (command == "fragile") { var result = cars.Where(c => c.Cargo.Type == "fragile" && c.Tire.Any(x => x.Pressure < 1)); foreach (var car in result) { Console.WriteLine(car); } } else if (command == "flamable") { var result = cars.Where(c => c.Cargo.Type == "flamable").Where(ep => ep.Engine.Power > 250); foreach (var car in result) { Console.WriteLine(car.Model); } } }
static void Main() { var cars = new List <Car>(); int n = int.Parse(Console.ReadLine()); for (int i = 0; i < n; i++) { var carInfo = Console.ReadLine().Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); var engine = new Engine { Speed = int.Parse(carInfo[1]), Power = int.Parse(carInfo[2]) }; var cargo = new Cargo { Weight = int.Parse(carInfo[3]), Type = carInfo[4] }; var tires = new List <Tire>(); for (int j = 5; j < carInfo.Length; j += 2) { var tire = new Tire(); tire.Pressure = double.Parse(carInfo[j]); tire.Age = int.Parse(carInfo[j + 1]); tires.Add(tire); } var car = new Car { Model = carInfo[0], Engine = engine, Cargo = cargo, Tires = tires }; cars.Add(car); } var command = Console.ReadLine(); if (command == "fragile") { cars.Where(a => a.Cargo.Type == "fragile" && a.Tires.Any(b => b.Pressure < 1)).ToList().ForEach(a => Console.WriteLine($"{a.Model}")); } else { cars.Where(a => a.Cargo.Type == "flamable" && a.Engine.Power > 250).ToList().ForEach(a => Console.WriteLine($"{a.Model}")); } }
public static void Main() { int amountOfCars = int.Parse(Console.ReadLine()); List <Car> cars = new List <Car>(); for (int line = 0; line < amountOfCars; line++) { string[] inputArgs = Console.ReadLine().Split(); string model = inputArgs[0]; int engineSpeed = int.Parse(inputArgs[1]); int enginePower = int.Parse(inputArgs[2]); int cargoWeight = int.Parse(inputArgs[3]); string cargoType = inputArgs[4]; Engine engine = new Engine(engineSpeed, enginePower); Cargo cargo = new Cargo(cargoWeight, cargoType); List <Tire> tiresOfACar = new List <Tire>(); int counter = 4; for (int i = 1; i <= 4; i++) { double tirePressure = double.Parse(inputArgs[i + counter]); int tireAge = int.Parse(inputArgs[i + counter + 1]); Tire tire = new Tire(tirePressure, tireAge); tiresOfACar.Add(tire); counter++; } Car car = new Car(model, engine, cargo, tiresOfACar); cars.Add(car); } string command = Console.ReadLine(); IEnumerable <Car> searchedCars; switch (command) { case "fragile": searchedCars = cars.Where(c => c.Cargo.Type == "fragile" && c.Tires.Any(t => t.Pressure < 1)); foreach (var car in searchedCars) { Console.WriteLine(car.Model); } break; case "flamable": searchedCars = cars.Where(c => c.Cargo.Type == "flamable" && c.Engine.Power > 250); foreach (var car in searchedCars) { Console.WriteLine(car.Model); } break; default: break; } }