В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
Elizaveta544435
Elizaveta544435
30.12.2022 06:17 •  Информатика

Составить программу в паскаль: найти подпоследовательность максимальной длины подряд идущих чисел массива равных между собой

Ответ:
Юлия111157
Юлия111157
05.10.2020 23:13
Const
   N = 33;
Var
   A:array[1..N] of integer;
   i,k,M,d:integer;
Begin
Randomize;
Write('Исходный массив:');
For i:= 1 to N do
    Begin
    A[i]:=random(N div 10+1);
    Write(' ',A[i])
    End;
WriteLn;
k:=1;
d:=0;
For i:=1 to N-1 do
    if (A[i]=A[i+1]) then k:=k+1
    else
       Begin
       if k>d then
          Begin
          d:=k;
          M:=i;
          End;
       k:=1;
       End;
if d>1 then WriteLn('Искомая последовательность начинается с элемента №',M-d+1,', и заканчивается элементом №',M,'')
else if d>0 then WriteLn('В массиве нет, стоящих рядом, равных чисел')
     else WriteLn('Все числа в последовательности равны');
End.

Пример:
Исходный массив: 1 1 1 1 1 2 2 1 3 2 0 3 1 3 0 3 3 0 0 1 3 1 1 2 3 0 1 1 2 2 1 0 0
Искомая последовательность начинается с элемента №1, и заканчивается элементом №5
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?