Defining Classes - 05. Special Cars
Здравейте,
В момента решавам задача Special Cars от Lab-а за Defining classes и стигам до момент в който judge ми дава 80/100.
Очевидно решението ми гърми на последния тест. Ще съм благодарен, ако някой може да погледне и да даде идеи относно това къде може да е проблема.
Zip с решението: https://1drv.ms/u/s!Aj3rGZruzuMcg0ArD4k8RB2NYvJ3?e=nXyfu6
Условие на задачата: https://1drv.ms/w/s!Aj3rGZruzuMcg0FYXsoCM8xECIjf?e=bhK7Mt
Link към judge: https://judge.softuni.bg/Contests/Practice/Index/1478#4
Благодаря! Така сработи и успях да открия каква е грешката при мен, а именно опита за форматиране на FuelQuantity по този начин: ($"FuelQuantity: {car.FuelQuantity:F1}");
Като премахнах F1, сработи с използването на метода WhoAmI.
Баси и при мен се оказа тъпото форматиране с :F1, да живее форумът за такива тестове!
Здравейте, ако е възможно може ли малко помощ за сортирането накрая на колите- с foreach крайното решение се получава, но само с Linq() не успявам да сумирам налягането в четирите гуми, които от своя страна се държат в Tire[], а самия масив е в listOfTires = new List<Tire[]>();
https://pastebin.com/x25G9MKB - тук е само StartUp с основната логика
Питането ми е за тези редове:
var filterCars = listOfCars.Where(car => car.Year >= 2017 && car.Engine.HorsePower > 330).ToList();
foreach (var car in filterCars)
{
double sumOfPressure = 0;
foreach (var tire in car.Tires) // Може ли да се направи с Linq и да се помести в по-горната филтрация?
{
sumOfPressure += tire.Pressure;
}
if (sumOfPressure >= 9 && sumOfPressure <= 10)
{
car.Drive(20);
Console.WriteLine(car.WhoAmI());
}
}
Здравей филтрацията трябва да може да се получи и с Linq по следния начин:
var filterCars = listOfCars.Where(car => car.Year >= 2017 && car.Engine.HorsePower > 330 && car.Tires.Sum(y => y.Pressure) >= 9 && car.Tires.Sum(y => y.Pressure) <= 10).ToList();
По този начин директно ще ти изкара нужните автомобили, върху които може да използваш Drive и WhoAmI методите.
@ NTonchev
благодаря Ви много за помощта!
Тествах решението Ви и при мен- работи и всичко е точно.
Вече ще знам, че с ламба израз може да се достъпят пропъртитата на самия обект, дори и ако преди това сме извършили сумиране.
Поздрави!
Искам да благодаря за прекрасното решение! Признавам си помогнах си малко!
Благодарим за решението, Сам не успях да се справя с тази задача.