Описать структуру с именем 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("Ничего не найдено. Повторите попытку");
- }
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д