public void AllPlaces(ref Train tr, out int places) { places = tr.PlacesCommon + tr.PlacesCoupe + tr.PlacesLuxury + tr.PlacesReserved; }
static void Main(string[] args) { int places, Size; Console.WriteLine("Введите размер массива классов Train: "); Size = Convert.ToInt32(Console.ReadLine()); Train[] Trains = new Train[Size]; //Простой конструктор (без параметров) Trains[0] = new Train(); Trains[0].Output(); //Конструктор с параметрами Trains[1] = new Train("Минск", 706, "6:33", 60, 45, 30, 40); Trains[1].Output(); //Конструктор с параметрами по умолчанию Trains[2] = new Train("Минск", 60, 45, 30, places4: 30); Trains[2].Output(); Trains[2].AllPlaces(ref Trains[2], out places); Console.WriteLine("Количество мест в поезде: {0}", places); //Trains[0].CounterOutput(); Console.WriteLine($"Строка представляющая объект Trains: {Trains[0].ToString()}"); Console.WriteLine($"Экземпляры Trains[0] и Trains[1] равны: {Trains[0].Equals(Trains[1])}"); Console.WriteLine($"Хеш-код экземпляра Trains[0]: {Trains[0].GetHashCode()}"); Console.WriteLine($"Тип экземпляра Trains[0]: {Trains[0].GetType()}"); string dest; Console.WriteLine("Поезд с каким направлением вы хотите найти?"); dest = Convert.ToString(Console.ReadLine()); //Поиск поездов по месту прибытия for (int i = 0; i < Size; i++) { if (Trains[i].Destination == dest) { Trains[i].Output(); break; } } Console.WriteLine("Поезд с каким направлением вы хотите найти?"); dest = Convert.ToString(Console.ReadLine()); string time; Console.WriteLine("После какого времени должен отправляться поезд?"); time = Convert.ToString(Console.ReadLine()); //Поиск поездов по месту прибытия и следующих после определенного времени for (int i = 0; i < Size; i++) { if (Trains[i].Destination == dest) { int hour1, hour2, minute1, minute2; char ch; //hour1 = ch = Trains[0].Time[0]; hour1 = (int)Char.GetNumericValue(Trains[0].Time[0]) * 10 + (int)Char.GetNumericValue(Trains[0].Time[1]); //Console.WriteLine(hour1); minute1 = (int)Char.GetNumericValue(Trains[0].Time[3]) * 10 + (int)Char.GetNumericValue(Trains[0].Time[4]); hour2 = (int)Char.GetNumericValue(time[0]) * 10 + (int)Char.GetNumericValue(time[1]); minute2 = (int)Char.GetNumericValue(time[3]) * 10 + (int)Char.GetNumericValue(time[4]); if (((hour1 == hour2) && minute1 > minute2) || hour1 > hour2) { Trains[i].Output(); break; } Trains[i].Output(); break; } } var t = new { Destination = "Брест", Number = 702, Time = "11:10", PlacesCoupe = 60, PlacesCommon = 42, PlacesLuxury = 30, PlacesReserved = 20 }; }