Ирина Панченко
Ирина Панченко

помогите написать программу на языке C#.

Описать структуру с именем TRAIN, содержащую следующие поля:
□название пункта назначения;
□номер поезда;
□время отправления.
Массив должен содержать не менее шести структур TRAIN.
Написать программу, выполняющую следующие действия:
□в соответствии с заданием;
□записи должны быть упорядочены по времени отправления поезда;
□поиск по полю номер поезда;
□вывод на экран информации о поездах, направляющихся в пункт, название которого введено с клавиатуры (если таких поездов нет, вывести соответствующее сообщение) .

Вот у меня получилось. Но она не работает. Помогите.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
using System.IO;
using System.Reflection;
using System.Data;

namespace CURSOR
{
public struct TRAIN
{
string punkt;
public int number;
public DateTime time;

public TRAIN(string punkt_, int number_, DateTime time_)
{
this.punkt = punkt_;
this.number = number_;
this.time = time_;
}
public int CompareTo(object T)
{
TRAIN bur = (TRAIN)T;

if (this.number.CompareTo(bur.number) == -1) return -1;
if (this.number.CompareTo(bur.number) == 0) return 0;
else return 1;
}
public override string ToString()
{
return String.Format("Название пункта назначения" + this.punkt + "\n Номер поезда" + this.number + "\n Время отправления" + this.time);
}
}
class Program
{
static void Main(string[] args)
{
ArrayList H = new ArrayList(6);

for (int i = 0, k = 6, i2 =>; 6, i2++)
{
H.Add(new TRAIN("punkt" + i2.ToString(),k,DateTime.Now));
k--;
}

foreach (TRAIN C in H)
{
Console.WriteLine(C.ToString());
}
Console.WriteLine("\nСортировка по номеру");
H.Sort();
{
string s;
bool b = true;
int c = 0;
while (b)
{
Console.WriteLine("\nВведите номер поезда для поиска");
s = Console.ReadLine();

for (int i = 0; i < s.Length; i++)
{
if (char.IsDigit(s) && (Convert.ToInt32(s) <= 6 || Convert.ToInt32(s) >= 0))
c++;
}
if (c == s.Length)
{
foreach (TRAIN C in H)
{
if (s == C.number.ToString()) Console.WriteLine(c.ToString());
}
b = false;
}
else Console.WriteLine("Таких поездов нет! ");
}
Console.ReadLine();
}
}
}
}

Большое спасибо.

Mingijan Tepkeev
Mingijan Tepkeev

Свои наработки?

LF
Lib For

using System;
using System.Collections.Generic;

namespace ConsoleApplication60
{
struct TRAIN : IComparer
{
string destinatiоn;
public string Destinatiоn { get { return destinatiоn; } set { destinatiоn = value; } }

int trainNumber;
public int TrainNumber { get { return trainNumber; } set { trainNumber = value; } }

DateTime timeOfDeparture;
public DateTime TimeOfDeparture { get { return timeOfDeparture; } set { timeOfDeparture = value; } }

public TRAIN(string destination, int trainNumber, DateTime timeOfDeparture)
{
this.destinatiоn = destination;
this.trainNumber = trainNumber;
this.timeOfDeparture = timeOfDeparture;
}

public int Compare(TRAIN x, TRAIN y)
{
return (int)(x.TimeOfDeparture - y.TimeOfDeparture).TotalMilliseconds;
}

public override string ToString()
{
return string.Format("Поезд номер {0} отправляется в {1}, {2}", trainNumber, destinatiоn, timeOfDeparture);
}
}

class Program
{
static void Main()
{
TRAIN[] schedule = new TRAIN[] {
new TRAIN("Бобруйск", 1, new DateTime(2013, 4, 12, 8, 0, 0)),
new TRAIN("Москва", 2, new DateTime(2013, 4, 11, 8, 0, 0)),
new TRAIN("Бобруйск", 3, new DateTime(2013, 4, 10, 8, 0, 0)),
new TRAIN("Киев", 4, new DateTime(2013, 4, 9, 8, 0, 0)),
new TRAIN("Минск", 5, new DateTime(2013, 4, 8, 8, 0, 0)),
new TRAIN("Владивосток", 6, new DateTime(2013, 4, 12, 8, 0, 0))
};

Array.Sort(schedule, new TRAIN());

foreach (var item in schedule)
{
Console.WriteLine(item);
}

Console.WriteLine("Введите номер поезда");
var number = Int32.Parse(Console.ReadLine());
foreach (var item in schedule)
{
if (item.TrainNumber == number)
{
Console.WriteLine(item);
break;
}
}

Console.WriteLine("Введите название пункта назначения");
var destinatiоn = Console.ReadLine().ToLowerInvariant();
foreach (var item in schedule)
{
if (item.Destinatiоn.ToLowerInvariant() == destinatiоn)
{
Console.WriteLine(item);
}
}
}
}
}

Людочка Гончаренко
Людочка Гончаренко

Если ещё актуально, пиши на почту, помогу бесплатно.

Похожие вопросы
Очень нужно написать программу на языке C++.
C/C++ -помогите написать программу на C++
Помогите написать программу на c++
Помогите написать программу c++
Помогите написать программу C#
Помогите написать программу на C#
помогите написать программу на языке C++
Помогите написать всю программу в C++
написать программу на языке C++
Написать программу на языке C#