Требуется определить максимальный промежуток времени между двумя автобусами одного маршрута - PascalABC.NET
Формулировка задачи:
На автобусную остановку каждую минуту подходит автобус одного из маршрутов. Диспетчерская служба собрала данные за N минут – номера маршрутов каждого автобуса.
Требуется определить максимальный промежуток времени между двумя автобусами одного маршрута.
Пример
8(минут)
2 11 2 2 25 11 25 11(номера автобусов)
=>
4(наибольший промежуток)
Другой пример
4
23 23 41 41
=>
1
Решение задачи: «Требуется определить максимальный промежуток времени между двумя автобусами одного маршрута»
textual
Листинг программы
Const N = 8; {4;} Var m : array[1..N] of Integer := (2,11,2,2,25,11,25,11); {(23,23,41,41);} i,j : Byte; max : Integer; Begin max:=0; For i:=1 to N-1 do Begin For j:=i+1 to N do If (m[i]=m[j]) and ((j-i)>max) then Begin max:=j-i; Break; end; end; Writeln(max); end.
Объяснение кода листинга программы
- В начале определяется константа N, которая задает количество автобусов в маршруте (в данном случае 8).
- Затем объявляется массив m, который содержит интервалы времени между автобусами. В данном случае это (23,23,41,41).
- Далее объявляются две переменные i и j типа Byte, которые будут использоваться в циклах.
- Также объявляется переменная max типа Integer, которая будет использоваться для хранения максимального интервала времени.
- Переменная max инициализируется значением 0.
- Затем идут два вложенных цикла. Первый цикл идет от 1 до N-1 и выполняет следующие действия:
- Второй цикл идет от i+1 до N и проверяет, равны ли значения в массиве m для текущего элемента и следующего элемента. Если это так, то проверяется, больше ли разница между этими элементами максимального значения, хранящегося в переменной max. Если это так, то значение переменной max обновляется, и цикл прерывается с помощью оператора Break.
- После завершения циклов выводится значение переменной max.
- В данном случае результатом будет 23, так как это максимальный интервал времени между автобусами в данном маршруте.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д