Самое время объявить Phoenix
класс:
public class Phoenix {
public Phoenix(double bodyLength,
double bodyWidth,
double lengthWidth) {
if (bodyLength < 0)
throw new ArgumentOutOfRangeException(nameof(bodyLength));
else if (bodyWidth < 0)
throw new ArgumentOutOfRangeException(nameof(bodyWidth));
else if (lengthWidth < 0)
throw new ArgumentOutOfRangeException(nameof(lengthWidth));
BodyLength = bodyLength;
BodyWidth = bodyWidth;
LengthWidth = lengthWidth;
}
public double BodyLength {get;}
public double BodyWidth {get;}
public double LengthWidth {get;}
public double TotalYears {
get {
return BodyLength * BodyLength * (BodyWidth + 2 * LengthWidth);
}
}
public override string ToString() {
return $"{BodyLength} {BodyWidth} {LengthWidth}";
}
}
Теперь давайте прочитаем все фениксы в коллекцию (List<Phoenix>
):
int pheonixamount = int.Parse(Console.ReadLine());
List<Phoenix> phoenixes = new List<Phoenix>();
for (int i = 0; i < pheonixamount; i++) {
Phoenix bird = new Phoenix(
double.Parse(Console.ReadLine()),
double.Parse(Console.ReadLine()),
double.Parse(Console.ReadLine())
);
phoenixes.Add(bird);
}
Наконец, давайте создадим report
на основе phoenixes
коллекции :
string report = string.Join(" ",
// 2 - number of phoenixes
phoenixes.Count().ToString(),
// phoenixes' exteriers (lengths and widths)
string.Join(" ", phoenixes),
// phoenixes' total years - a pinch of Linq - Select
string.Join(" ", phoenixes.Select(item => item.TotalYears))
);
Console.Write(report);