social1986

Untitled

Feb 18th, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.83 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. public class StartUp
  6. {
  7.     public static void Main()
  8.     {
  9.         var countOfCars = int.Parse(Console.ReadLine());
  10.         var cars = new List<Car>();
  11.  
  12.         for (int i = 0; i < countOfCars; i++)
  13.         {
  14.             var tokens = Console.ReadLine().Split();
  15.             var carModel = tokens[0];
  16.             var engineSpeed = int.Parse(tokens[1]);
  17.             var enginePower = int.Parse(tokens[2]);
  18.             var cargoWeight = int.Parse(tokens[3]);
  19.             var cargoType = tokens[4];
  20.  
  21.             var engine = new Engine(engineSpeed, enginePower);
  22.             var cargo = new Cargo(cargoType, cargoWeight);
  23.  
  24.             Car currentCar = new Car(carModel, cargo, engine);
  25.  
  26.             var tyres = tokens.Skip(5).ToArray();
  27.  
  28.             for (int j = 0; j < tyres.Length; j+=2)
  29.             {
  30.                 var tyreAge = int.Parse(tyres[j + 1]);
  31.                 var tyrePressure = double.Parse(tyres[j]);
  32.                 var tyre = new Tyre(tyreAge, tyrePressure);
  33.                 currentCar.AddTyre(tyre);
  34.             }
  35.             cars.Add(currentCar);
  36.         }
  37.  
  38.         var command = Console.ReadLine();
  39.  
  40.         if (command == "fragile")
  41.         {
  42.             var carsToBePrinted = cars.Where(c => c.Cargo.CargoType == "fragile").Where(c => c.AveragePressure < 1).ToArray();
  43.  
  44.             foreach (var car in carsToBePrinted)
  45.             {
  46.                 Console.WriteLine(car.Model);
  47.             }
  48.         }
  49.         else if (command == "flamable")
  50.         {
  51.             var carsToBePrinted = cars.Where(c => c.Cargo.CargoType == "flamable").Where(c => c.Engine.EnginePower > 250).ToArray();
  52.  
  53.             foreach (var car in carsToBePrinted)
  54.             {
  55.                 Console.WriteLine(car.Model);
  56.             }
  57.         }
  58.  
  59.     }
  60. }
Add Comment
Please, Sign In to add comment