Можно ли сделать код рациональней? - C#
Формулировка задачи:
Здравствуйте! Посоветуйте, пожалуйста, можно ли сделать код рациональней? Может, делаю лишнюю работу:
namespace height { class Program { static void Main(string[] args) { MyData X1 = new MyData(); MyData X2 = new MyData(); MyData X3 = new MyData(); MyData Xmax; MyData Xmin; X1.Init2(175, "Petrov"); X2.Init2(180, "Ivanov"); X3.Init2(208, "Kirilenko"); Console.WriteLine("Petrov:" + fromSmToInch.ToInch(X1)); Console.WriteLine("Ivanov:" + fromSmToInch.ToInch(X2)); Console.WriteLine("Kirilenko:" + fromSmToInch.ToInch(X3)); X2.PrintHeightInch(); Xmax = X2.GetMoreHigh(X1, X3); Xmax.PrintHeightInch(); Xmin = X2.GetLow(X1, X3); // находим имя и рост минимального человека Xmin.PrintLowestHeightInch(); // выводим имя и рост минимального человека } } class MyData { private double height; private string name; public void Init2(double height, string name) { this.height = height; this.name = name; } public double GetHeight() { return height; } public string GetName() { return name; } public void PrintHeightInch() { Console.WriteLine("H= {0} дюймов", fromSmToInch.ToInch(this)); } public void PrintLowestHeightInch() { Console.WriteLine("{0}: {1} дюймов", LName.gName(this), fromSmToInch.ToInch(this)); } public MyData GetMoreHigh(MyData aData, MyData bData) // метод для поиска максимального роста среди трёх человек { if (aData.GetHeight() > height && aData.GetHeight() > bData.GetHeight()) return aData; else if (bData.GetHeight() > height && bData.GetHeight() > aData.GetHeight()) return bData; else return this; } public MyData GetLow(MyData aData, MyData bData) // метод для поиска минимального роста среди трёх человек { if (aData.GetHeight() < height && aData.GetHeight() < bData.GetHeight()) return aData; else if (bData.GetHeight() < height && bData.GetHeight() < aData.GetHeight()) return bData; else return this; } } class fromSmToInch { public static double ToInch(MyData SmData) { return SmData.GetHeight() / 2.54; } } class LName // находим имя человека с наименьшим ростом { public static string gName(MyData SmName) { return SmName.GetName(); } } }
Решение задачи: «Можно ли сделать код рациональней?»
textual
Листинг программы
public static double MaxHeight(MyData first, MyData second, MyData third) { return Math.Max(first.Height, Math.Max(second.Height, third.Height)); } public static double MinHeight(MyData first, MyData second, MyData third) { return Math.Min(first.Height, Math.Min(second.Height, third.Height)); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д