• На Pascal
    Дан линейный массив из N целых чисел (N=10). Найти и вы-
    вести самую длинную неубывающую подпоследовательность подряд идущих
    элементов массива и ее длину. Если таковых несколько, то вывести одну из
    них. Пример: исходный массив 1 2 3 2 3 3 4 3 4 5, ответ 2 3 3 4, длина = 4.

Ответы 1

  • const n=10;var   k,l,m,i,j: integer;  var a: array[1..n] of integer;begin  k:=0; m:=0; j:=0; l:=0;  for i:=1 to n do begin    a[i]:=random(10);    write (a[i]:3);    if (i>1) and (a[i]>=a[i-1])       then begin k:=k+1; j:=i; end      else         if (k>0) and (k>l)           then begin l:=k; m:=j; k:=0 end          else k:=0;  end;  if (k>0) and (k>l)     then begin l:=k; m:=n end;   writeln;  writeln;  for i:=m-l to m do     write (a[i]:3);  l:=l+1;  writeln;  writeln ('Длина = ',l)end.-----------результат:-------------  9  2  5  0  8  5  7  7  3  7  5  7  7Длина = 3--------------------------------------* рандомный ввод массива можно заменить обычным с клавиатуры
  • Добавить свой ответ

Еще вопросы

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years