Advertisement
PetarNeshkov5360

Special cars-main

Jan 9th, 2021
303
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.00 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5.  
  6. namespace CarManufacturer
  7. {
  8. public class StartUp
  9. {
  10. static void Main(string[] args)
  11. {
  12. string input = "";
  13. List<Tire[]> ListOftires = new List<Tire[]>();
  14. List<Engine> ListOfEngines = new List<Engine>();
  15. List<Car> ListOfCars = new List<Car>();
  16. while ((input = Console.ReadLine()) != "No more tires")
  17. {
  18. string[] tires = input.Split();
  19. Tire[] currTires = new Tire[4]
  20. {
  21. new Tire(int.Parse(tires[0]), double.Parse(tires[1])),
  22. new Tire(int.Parse(tires[2]), double.Parse(tires[3])),
  23. new Tire(int.Parse(tires[4]), double.Parse(tires[5])),
  24. new Tire(int.Parse(tires[6]), double.Parse(tires[7]))
  25. };
  26. ListOftires.Add(currTires);
  27. }
  28. while ((input = Console.ReadLine()) != "Engines done")
  29. {
  30. double[] engines = input.Split().Select(double.Parse).ToArray();
  31.  
  32. int horsePower = (int)(engines[0]);
  33. double pressure = engines[1];
  34. Engine currEngine = new Engine(horsePower, pressure);
  35. ListOfEngines.Add(currEngine);
  36. }
  37. while ((input = Console.ReadLine()) != "Show special")
  38. {
  39. string[] cars = input.Split();
  40. string Name = cars[0];
  41. string model = cars[1];
  42. int year = int.Parse(cars[2]);
  43. double fuelQuantity = double.Parse(cars[3]);
  44. double fuelConsumption = double.Parse(cars[4]);
  45. int engineIndex = int.Parse(cars[5]);
  46. int tiresIndex = int.Parse(cars[6]);
  47. Car currCar = new Car(Name, model, year, fuelQuantity, fuelConsumption, ListOfEngines[engineIndex], ListOftires[tiresIndex]);
  48. ListOfCars.Add(currCar);
  49. }
  50. string result = SpecialCars(ListOfCars);
  51. Console.WriteLine(result);
  52. }
  53. public static string SpecialCars(List<Car> cars)
  54. {
  55. List<Car> spcialCars = cars
  56. .Where(x => x.Year >= 2017)
  57. .Where(x => x.Engine.HorsePower > 330)
  58. .Where(x => x.Tires.Sum(y => y.Pressure) >= 9 && x.Tires.Sum(y => y.Pressure) <= 10)
  59. .ToList();
  60. StringBuilder result = new StringBuilder();
  61. foreach (var car in spcialCars)
  62. {
  63. car.Drive(20);
  64. result.AppendLine($"Make: {car.Make}");
  65. result.AppendLine($"Model: {car.Model}");
  66. result.AppendLine($"Year: {car.Year}");
  67. result.AppendLine($"HorsePowers: {car.Engine.HorsePower}");
  68. result.AppendLine($"FuelQuantity: {car.FuelQuantity}");
  69. }
  70. return result.ToString();
  71. }
  72.  
  73. }
  74. }
  75.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement