Решаем задачу на C#

Приветствую всех, сегодня решаем задачу со следующим условием:

Создать базовый класс Plain (самолет), содержащий поля: тип самолета, количество пассажиров. Создать производный класс Flight(рейс), содержащий дополнительные поля: номер рейса, названия пункта назначения. Описать методы для вывода на экран сведения об объекте, получения и установки значений некоторых полей. Организовать вывод на экран сведений из массива обо всех самолетах, вылетающих в пункт назначения, введенный с клавиатуры(если таких самолетов нет, то вывести соответствующее сообщение).

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();
        }

    }

}
Обновлено: 06.12.2019 — 14:21

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.