Требуется определить максимальный промежуток времени между двумя автобусами одного маршрута - PascalABC.NET

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

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

На автобусную остановку каждую минуту подходит автобус одного из маршрутов. Диспетчерская служба собрала данные за N минут – номера маршрутов каждого автобуса. Требуется определить максимальный промежуток времени между двумя автобусами одного маршрута. Пример 8(минут) 2 11 2 2 25 11 25 11(номера автобусов) => 4(наибольший промежуток) Другой пример 4 23 23 41 41 => 1

Решение задачи: «Требуется определить максимальный промежуток времени между двумя автобусами одного маршрута»

textual
Листинг программы
  1. Const N = 8; {4;}
  2. Var
  3.   m    : array[1..N] of Integer := (2,11,2,2,25,11,25,11); {(23,23,41,41);}
  4.   i,j  : Byte;
  5.   max  : Integer;
  6. Begin
  7.   max:=0;
  8.   For i:=1 to N-1 do
  9.   Begin
  10.     For j:=i+1 to N do
  11.       If (m[i]=m[j]) and ((j-i)>max) then
  12.       Begin
  13.         max:=j-i;
  14.         Break;
  15.       end;
  16.   end;
  17.   Writeln(max);
  18. end.

Объяснение кода листинга программы

  1. В начале определяется константа N, которая задает количество автобусов в маршруте (в данном случае 8).
  2. Затем объявляется массив m, который содержит интервалы времени между автобусами. В данном случае это (23,23,41,41).
  3. Далее объявляются две переменные i и j типа Byte, которые будут использоваться в циклах.
  4. Также объявляется переменная max типа Integer, которая будет использоваться для хранения максимального интервала времени.
  5. Переменная max инициализируется значением 0.
  6. Затем идут два вложенных цикла. Первый цикл идет от 1 до N-1 и выполняет следующие действия:
    1. Второй цикл идет от i+1 до N и проверяет, равны ли значения в массиве m для текущего элемента и следующего элемента. Если это так, то проверяется, больше ли разница между этими элементами максимального значения, хранящегося в переменной max. Если это так, то значение переменной max обновляется, и цикл прерывается с помощью оператора Break.
  7. После завершения циклов выводится значение переменной max.
  8. В данном случае результатом будет 23, так как это максимальный интервал времени между автобусами в данном маршруте.

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


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

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

7   голосов , оценка 4.143 из 5

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

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

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