Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- namespace RawData
- {
- public class StartUp
- {
- static void Main(string[] args)
- {
- var listOfCars = new List<Car>();
- var listOfTires = new List<Tire>();
- Car car;
- Engine engine;
- Cargo cargo;
- Tire tire1;
- Tire tire2;
- Tire tire3;
- Tire tire4;
- int numberOfCars = int.Parse(Console.ReadLine());
- for (int i = 0; i < numberOfCars; i++)
- {
- string[] carInfo = Console.ReadLine()
- .Split();
- 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 = new Engine(engineSpeed, enginePower);
- cargo = new Cargo(cargoWeight, cargoType);
- tire1 = new Tire(tire1Pressure, tire1Age);
- tire2 = new Tire(tire2Pressure, tire2Age);
- tire3 = new Tire(tire3Pressure, tire3Age);
- tire4 = new Tire(tire4Pressure, tire4Age);
- listOfTires.Add(tire1);
- listOfTires.Add(tire2);
- listOfTires.Add(tire3);
- listOfTires.Add(tire4);
- car = new Car(model, engine, cargo, listOfTires);
- listOfCars.Add(car);
- }
- string condition = Console.ReadLine();
- if (condition == "fragile")
- {
- foreach (var caR in listOfCars
- .Where(c => c.Cargo.CargoType == condition
- && c.Tire.Any(t => t.TirePressure < 1)))
- {
- Console.WriteLine(caR.Model);
- }
- }
- else if (condition == "flamable")
- {
- foreach (var caR in listOfCars
- .Where(c => c.Cargo.CargoType == condition
- && c.Engine.EnginePower > 250))
- {
- Console.WriteLine(caR.Model);
- }
- }
- }
- }
- public class Car
- {
- public Car(string model, Engine engine, Cargo cargo, List<Tire> tire)
- {
- this.Model = model;
- this.Engine = engine;
- this.Cargo = cargo;
- this.Tire = tire;
- }
- private string model;
- private Engine engine;
- private Cargo cargo;
- private List<Tire> tire;
- public string Model
- {
- get { return this.model; }
- set { this.model = value; }
- }
- public Engine Engine
- {
- get { return this.engine; }
- set { this.engine = value; }
- }
- public Cargo Cargo
- {
- get { return this.cargo; }
- set { this.cargo = value; }
- }
- public List<Tire> Tire
- {
- get { return this.tire; }
- set { this.tire = value; }
- }
- }
- public class Engine
- {
- public Engine(int speed,int power)
- {
- this.EngineSpeed = speed;
- this.EnginePower = power;
- }
- private int engineSpeed;
- private int enginePower;
- public int EngineSpeed
- {
- get { return this.engineSpeed; }
- set { this.engineSpeed = value; }
- }
- public int EnginePower
- {
- get { return this.enginePower; }
- set { this.enginePower = value; }
- }
- }
- public class Cargo
- {
- public Cargo(int weight, string type)
- {
- this.CargoWeight = weight;
- this.CargoType = type;
- }
- private int cargoWeight;
- private string cargoType;
- public int CargoWeight
- {
- get { return this.cargoWeight; }
- set { this.cargoWeight = value; }
- }
- public string CargoType
- {
- get { return this.cargoType; }
- set { this.cargoType = value; }
- }
- }
- public class Tire
- {
- public Tire(double pressure, int age)
- {
- this.TirePressure = pressure;
- this.TireAge = age;
- }
- private double tirePressure;
- private int tireAge;
- public double TirePressure
- {
- get { return this.tirePressure; }
- set { this.tirePressure = value; }
- }
- public int TireAge
- {
- get { return this.tireAge; }
- set { this.tireAge = value; }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement