private static void Main(string[] args) { Console.OutputEncoding = Encoding.UTF8; //Reservoir res = new Reservoir(1050, 0, 100, 50000); ////Reservoir res = new Reservoir(); //Console.Write("введiть площу водоймища(м.кв.) "); //res.Square = int.Parse(Console.ReadLine()); //Console.Write("введiть кiлькiсть впадаючих рiчок "); //res.Number = int.Parse(Console.ReadLine()); //Console.Write("введiть найбiльшу глибину(м.) "); //res.MaxDepth = double.Parse(Console.ReadLine()); //Console.Write("введiть масу води(кг.) "); //res.WeightWater = double.Parse(Console.ReadLine()); //Console.WriteLine(""); //Console.WriteLine("середня глибина водоймища = " + res.AverageDepth() + "(м.)"); //if (res.WaterAnalise()) // Console.WriteLine("маса води бiльша нiж 1000(кг.)"); //else // Console.WriteLine("маса води менша нiж 1000(кг.)"); //Console.WriteLine(res.NumberRivers()); var lake = new Lake(); List <Lake> lakesList = new List <Lake>(); // Lake for (int i = 0; i < 4; i++) { Console.WriteLine("Клас Lake"); lake = new Lake(); Console.Write("введiть назву озера "); lake.Name = Console.ReadLine(); Console.Write("введiть кiлькiсть причалiв "); lake.BerthsQty = int.Parse(Console.ReadLine()); lakesList.Add(lake); } lakesList.Sort(Lake.compareLakesByName); lakesList.Sort(Lake.compareLakesByBerthsQuality); for (int i = 0; i < lakesList.Count; i++) { Console.WriteLine(lakesList[i]); } //Console.WriteLine("Клас Lake"); //var lake = new Lake(); //Console.Write("введiть кiлькiсть причалiв "); //lake.BerthsQty = int.Parse(Console.ReadLine()); //Console.Write("введiть рiвень заболоченостi "); //lake.BoggingLevel = int.Parse(Console.ReadLine()); //Console.Write("введiть коефiнiєнт солоностi "); //lake.SaltFactor = int.Parse(Console.ReadLine()); //Console.Write("введiть кiлькiсть водозаборiв "); //lake.WaterIntakeQty = int.Parse(Console.ReadLine()); // Console.WriteLine(); // Console.WriteLine($"Кiлькiсть рейсiв {lake.VoyagesPerMonth()}"); // Console.WriteLine($"Якiсть води {lake.WaterQuality()}"); // Console.WriteLine($"Середня глибина у поточному мiсяцi {lake.VoyagesPerMonth()}"); ////Pond //var pond = new Pond(); //Console.Write("введiть кiлькiсть мiсць на пляжi "); //pond.Colvoplaces = int.Parse(Console.ReadLine()); //Console.Write("введiть рiвень забрудненостi води "); //pond.Drinkwater = int.Parse(Console.ReadLine()); //Console.Write("введiть кiлькiсть стереотипних видань "); //pond.Stereotype = int.Parse(Console.ReadLine()); //Console.Write("введiть кiлькiсть рокiв видання "); //pond.Years = int.Parse(Console.ReadLine()); //Console.WriteLine(); // Console.WriteLine($"Середня площа на пляж (м.кв.) {pond.squar(res.Square)}"); //Console.WriteLine($"Маса води на одну рибу (кг.) {pond.fishweight(res.WeightWater)}"); Console.ReadLine(); }
static public int compareLakesByName(Lake l1, Lake l2) { return(String.Compare(l1.Name, l2.Name));//l1.Name.CompareTo(l2.Name); }
static public int compareLakesBySaltFactor(Lake l1, Lake l2) { return(l1.SaltFactor.CompareTo(l2.SaltFactor)); }
static public int compareLakesByBoggingLevel(Lake l1, Lake l2) { return(l1.BoggingLevel.CompareTo(l2.BoggingLevel)); }
static public int compareLakesByBerthsQuality(Lake l1, Lake l2) { return(l1.BerthsQty.CompareTo(l2.BerthsQty)); }
/// <summary> /// Сравнение качества воды в разных экземплярах класса Lake /// </summary> /// <param name="l1">Озеро 1</param> /// <param name="l2">Озеро 2</param> /// <returns>-1, если качество воды во втором озере лучше; 0, если качество воды одинаково; 1, если в первом озере качество воды лучше</returns> // how to use compareLakesBy... functions: // 1. create list of class Lake: // List<Lake> lakesList; // ***some info about how does List<T> work: https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.list-1?view=netframework-4.8*** // 2. when you have to sort it: // lakesList.Sort(Lake.compareLakesBy...*variants are under*...) static public int compareLakesByWaterIntakeQuality(Lake l1, Lake l2) { return(l1.WaterIntakeQty.CompareTo(l2.WaterIntakeQty)); }