Приветствую всех, сегодня решаем задачу со следующим условием:
Создать базовый класс Plain (самолет), содержащий поля: тип самолета, количество пассажиров. Создать производный класс Flight(рейс), содержащий дополнительные поля: номер рейса, названия пункта назначения. Описать методы для вывода на экран сведения об объекте, получения и установки значений некоторых полей. Организовать вывод на экран сведений из массива обо всех самолетах, вылетающих в пункт назначения, введенный с клавиатуры(если таких самолетов нет, то вывести соответствующее сообщение).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp7 { class Plain { string type_of_aircraft; int quantity; public Plain() // конструктор по умолчанию { this.type_of_aircraft = "Airbus"; this.quantity = 0; } public Plain(string type_of_aircraft, int quantity) { this.type_of_aircraft = type_of_aircraft; this.quantity = quantity; } public Plain(object p) { } virtual public void Show()// метод для вывода информации на экран { Console.WriteLine("Тип самолета: \n" + this.type_of_aircraft); Console.WriteLine("Пассажиры: \n" + this.quantity); } public string Type { get { return type_of_aircraft; } set { type_of_aircraft = value; } } public int Quantity { get { return quantity; } set { quantity = value; } } } class Flight : Plain // производный класс { int flight_number; // номер рейса string destination; // пункт назначения public Flight(int flight_number, string destination, string type_of_aircraft, int quantity) : base(type_of_aircraft, quantity) // конструктор для рейса { this.flight_number = flight_number; this.destination = destination; } override public void Show() // метод для вывода информации на экран { base.Show(); Console.WriteLine("Номер рейса:" + flight_number); Console.WriteLine("Пункт назначения: " + destination); } public int Flight_Number { get { return flight_number; } set { flight_number = value; } } public string Destination { get { return destination; } set { destination = value; } } } class Program { static void Main(string[] args) { Random random = new Random(); const int n = 3; Plain[] plains = new Plain[n]; int Fnumber, Quty; // номер рейса, кол-во пассажиров string Dest; //пункт назначения string Type; // тип самолета for (int i = 0; i < n; i++) { Console.WriteLine("Название самолета: "); Type = Console.ReadLine(); Console.WriteLine("Введите пункт назначения: "); Dest = Console.ReadLine(); Console.WriteLine("Введите номер рейса: "); Fnumber = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("Введите кол-во пассажиров: "); Quty = Convert.ToInt32(Console.ReadLine()); Plain p = new Flight(Fnumber, Dest, Type, Quty); plains[i] = p; Console.WriteLine("-------------------------------------------------------"); } for (int i = 0; i < n; i++) //цикл для выведения конечного результата { plains[i].Show(); } Console.WriteLine("Enter desired destination"); string Dest1 = Console.ReadLine(); bool flag = true; for (int i = 0; i < plains.Length; i++) { if (Dest1 == ((Flight) plains[i]).Destination) { plains[i].Show(); flag = false; } } if (flag) Console.WriteLine("No matches found"); Console.ReadKey(); } } } |