Есть ответ 👍

Бағдарламау жүйесінің режмін анықтаңыз​

243
290
Посмотреть ответы 3

Ответы на вопрос:

Rena555582
4,5(55 оценок)

п Че ұ чувашааапчоооыпыгы


ти фофовоигцо8пщчо8щов9епгцщзт


// Pascal ABC.NET

type

 Train = class

 

 private

 

   ПунктНазначения: string;

   НомерПоезда: string;

   ВремяOтправления: string;

   Информация: string;

   

   static function ЧастьНомера(s: string) := s.MatchValue('\d*').ToInteger;

 

 public

 

 constructor (ПН, НП, ВО: string; И: string := '');

 begin

   ПунктНазначения := ПН;

   НомерПоезда := НП;

   ВремяOтправления := ВО;

   Информация := И

 end;

 

 static procedure УпорядочитьПункты(var a: array of Train) :=

   a := a.OrderBy(p -> p.ПунктНазначения)

       .ThenBy(p -> p.ВремяOтправления).ToArray;

   

 static procedure УпорядочитьНомера(var a: array of Train) :=

   a := a.OrderBy(p -> ЧастьНомера(p.НомерПоезда)).ToArray;  

 

 function ToString: string; override :=

     $'{ПунктНазначения,-20} {НомерПоезда,-5} {ВремяOтправления,7}' +

         $'  {Информация}';

     

end;

function ДобавитьИнформацию(Self: array of Train;

     НомерПоезда, Информация: string): boolean; extensionmethod;

begin

 Result := True;

 var i := Self.FindIndex(p -> p.НомерПоезда = НомерПоезда);

 if i >= 0 then

   Self[i].Информация := Информация

 else

   Result := False

end;

begin

 var a := new Train[5];

 a[0] := new Train('Адлер','4c','15:40');

 a[1] := new Train('Санкт-Петербург','132п','07:19');

 a[2] := new Train('Казань','8ф','12:35');

 a[3] := new Train('Новосибирск','217п','18:05');

 a[4] := new Train('Адлер','18c','08:32');

 Train.УпорядочитьНомера(a);

 a.PrintLines;

 var np := ReadlnString('Номер поезда:');

 var info := ReadlnString('Добавочная информация:');

 if not a.ДобавитьИнформацию(np, info) then

   Println('Не найден номер поезда');

 Train.УпорядочитьПункты(a);

 a.PrintLines

end.

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS