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

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

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

Ребят, помогите, пожалуйста, довести код до ума. Задание: Описать структуру с именем TRAIN, содержащую следующие поля: - название пункта назначения; - номер поезда; - время отправления. Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа TRAIN (записи должны быть упорядочены по номерам поездов); - вывод на экран информации о поездах, направляющихся в пункт, название которого введено с клавиатуры (если таких поездов нет, вывести соответствующее сообщение). Вот мои наработки. Не работает конкретно поиск информации о поездах.
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace @struct
  7. {
  8. struct TRAIN
  9. {
  10. public string Punkt_nazn;
  11. public int Number_poezda;
  12. public DateTime time;
  13. public TRAIN(string Punkt_nazn, int Number_poezda, DateTime time)
  14. {
  15. this.Punkt_nazn = Punkt_nazn;
  16. this.Number_poezda = Number_poezda;
  17. this.time = time;
  18. }
  19. public void Write_poezd()
  20. {
  21. Console.WriteLine("Название пункта назначения: {0}, Номер поезда: {1}, Время отправления: ", Punkt_nazn, Number_poezda, time);
  22. }
  23. }
  24. class Program
  25. {
  26. static void Main(string[] args)
  27. {
  28. TRAIN [] main_poezd = new TRAIN[6];
  29. for (int i = 0; i < main_poezd.Count(); i++)
  30. {
  31. Console.WriteLine("Введите название пункта назначения: ");
  32. main_poezd[i].Punkt_nazn = Convert.ToString(Console.ReadLine());
  33. Console.WriteLine("Введите номер поезда: ");
  34. main_poezd[i].Number_poezda = Convert.ToInt32(Console.ReadLine());
  35. Console.WriteLine("Введите дату отправления: ");
  36. main_poezd[i].time = Convert.ToDateTime(Console.ReadLine());
  37. }
  38. string str;
  39. bool b = true;
  40. int count = 0;
  41. while (b)
  42. {
  43. Console.WriteLine("Введите название пункта назначения для поиска");
  44. str = Console.ReadLine();
  45. for (int i = 0; i < str.Length; i++)
  46. {
  47. if (char.IsDigit(str[i]) && (Convert.ToInt32(str[i])<=6 || Convert.ToInt32(str[i])>=0)) count++;
  48. }
  49. if (count == str.Length)
  50. {
  51. foreach (TRAIN c in main_poezd)
  52. {
  53. if (str == c.Punkt_nazn.ToString()) Console.WriteLine(c.ToString());
  54. }
  55. b = false;
  56. }
  57. else Console.WriteLine("Повторите попытку");
  58. }
  59. Console.ReadLine();
  60. }
  61. }
  62. }

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

textual
Листинг программы
  1. using System;
  2.  
  3. namespace @struct
  4. {
  5.     struct Train
  6.     {
  7.         public string Destination;
  8.         public int Number;
  9.         public DateTime Departure;
  10.         public Train(string destination, int number, DateTime departure)
  11.         {
  12.             this.Destination = destination;
  13.             this.Number = number;
  14.             this.Departure = departure;
  15.  
  16.         }
  17.  
  18.         public override string ToString()
  19.         {
  20.             return string.Format("Пункт назначения: {0}, № поезда: {1}, Отправление: {2}", Destination, Number, Departure);
  21.         }
  22.     }
  23.     class Program
  24.     {
  25.         static void Main(string[] args)
  26.         {
  27.             Train[] trains = new Train[6];
  28.  
  29.             for (int i = 0; i < trains.Length; i++)
  30.             {
  31.                 Console.WriteLine("Введите название пункта назначения:  ");
  32.                 string destination = Console.ReadLine();
  33.  
  34.                 Console.WriteLine("Введите номер поезда: ");
  35.                 int number = int.Parse(Console.ReadLine());
  36.  
  37.                 Console.WriteLine("Введите дату отправления: ");
  38.                 DateTime departure = DateTime.Parse(Console.ReadLine());
  39.  
  40.                 trains[i] = new Train(destination, number, departure);
  41.             }
  42.  
  43.             Console.WriteLine("Введите название пункта назначения для поиска или end для выхода");
  44.             string input;
  45.             while ((input = Console.ReadLine()) != "end")
  46.             {
  47.                 bool trainFound = false;
  48.                 for (int i = 0; i < trains.Length; i++)
  49.                 {
  50.                     if (trains[i].Destination == input)
  51.                     {
  52.                         Console.WriteLine(trains[i]);
  53.                         trainFound = true;
  54.                     }
  55.                 }
  56.  
  57.                 if (!trainFound)
  58.                     Console.WriteLine("Ничего не найдено. Повторите попытку");
  59.             }
  60.         }
  61.     }
  62. }

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


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

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

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут