Описать структуру с именем TRAIN - C# (187046)

Узнай цену своей работы

Формулировка задачи:

Ребят, помогите, пожалуйста, довести код до ума. Задание: Описать структуру с именем TRAIN, содержащую следующие поля: - название пункта назначения; - номер поезда; - время отправления. Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа TRAIN (записи должны быть упорядочены по номерам поездов); - вывод на экран информации о поездах, направляющихся в пункт, название которого введено с клавиатуры (если таких поездов нет, вывести соответствующее сообщение). Вот мои наработки. Не работает конкретно поиск информации о поездах.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace @struct
{
    struct TRAIN
    {
        public string Punkt_nazn;
        public int Number_poezda;
        public DateTime time;
        public TRAIN(string Punkt_nazn, int Number_poezda, DateTime time)
        {
            this.Punkt_nazn = Punkt_nazn;
            this.Number_poezda = Number_poezda;
            this.time = time;
 
        }
        public void Write_poezd()
        {
            Console.WriteLine("Название пункта назначения: {0}, Номер поезда: {1}, Время отправления: ", Punkt_nazn, Number_poezda, time);
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            TRAIN [] main_poezd = new TRAIN[6];
 
            for (int i = 0; i < main_poezd.Count(); i++)
            {
                Console.WriteLine("Введите название пункта назначения:  ");
                main_poezd[i].Punkt_nazn = Convert.ToString(Console.ReadLine());
 
                Console.WriteLine("Введите номер поезда: ");
                main_poezd[i].Number_poezda = Convert.ToInt32(Console.ReadLine());
 
                Console.WriteLine("Введите дату отправления: ");
                main_poezd[i].time = Convert.ToDateTime(Console.ReadLine());
 
            }
           string str;
            bool b = true;
            int count = 0;
            while (b)
            {
                Console.WriteLine("Введите название пункта назначения для поиска");
                 str = Console.ReadLine();
 
                for (int i = 0; i < str.Length; i++)
                {
                    if (char.IsDigit(str[i]) && (Convert.ToInt32(str[i])<=6 || Convert.ToInt32(str[i])>=0)) count++;
                }
 
                if (count == str.Length)
                {
                    foreach (TRAIN c in main_poezd)
                    {
                        if (str == c.Punkt_nazn.ToString()) Console.WriteLine(c.ToString());
                    }
                    b = false;
                }
                else Console.WriteLine("Повторите попытку");
            }
 
            Console.ReadLine();
        }
    }
}

Решение задачи: «Описать структуру с именем TRAIN»

textual
Листинг программы
using System;
 
namespace @struct
{
    struct Train
    {
        public string Destination;
        public int Number;
        public DateTime Departure;
        public Train(string destination, int number, DateTime departure)
        {
            this.Destination = destination;
            this.Number = number;
            this.Departure = departure;
 
        }
 
        public override string ToString()
        {
            return string.Format("Пункт назначения: {0}, № поезда: {1}, Отправление: {2}", Destination, Number, Departure);
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            Train[] trains = new Train[6];
 
            for (int i = 0; i < trains.Length; i++)
            {
                Console.WriteLine("Введите название пункта назначения:  ");
                string destination = Console.ReadLine();
 
                Console.WriteLine("Введите номер поезда: ");
                int number = int.Parse(Console.ReadLine());
 
                Console.WriteLine("Введите дату отправления: ");
                DateTime departure = DateTime.Parse(Console.ReadLine());
 
                trains[i] = new Train(destination, number, departure);
            }
 
            Console.WriteLine("Введите название пункта назначения для поиска или end для выхода");
            string input;
            while ((input = Console.ReadLine()) != "end")
            {
                bool trainFound = false;
                for (int i = 0; i < trains.Length; i++)
                {
                    if (trains[i].Destination == input)
                    {
                        Console.WriteLine(trains[i]);
                        trainFound = true;
                    }
                }
 
                if (!trainFound)
                    Console.WriteLine("Ничего не найдено. Повторите попытку");
            }
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 3.375 из 5