Нахождение второго по величине элемента массива - Pascal

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

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

const n=10;
Var i, j: Integer;
y:Integer;
m: array[1..100] of integer;
Begin
For i:=1 to n do begin
m[i]:=random(100);
write(m[i]:4);
end;
j:=m[1];
For i := 2 to n do begin
If m[i]>j then j:=m[i];
end;
For i := 1 to n do begin
If (m[i]>y) and (m[i]<>j) then y:=m[i];
end;
Writeln();
Write(y);
End.

Решение задачи: «Нахождение второго по величине элемента массива»

textual
Листинг программы
const nn=2;
var
  n, i, j, t: Integer;
  m: array [1..nn+1] of Integer;
begin
  Write('N: '); ReadLn(n);
  Write('Введите ',n,' чисел: ');
  for n:=1 to n do begin
    if j<=nn then Inc(j);
    Read(m[j]); i:=j;
    while (i>1) and (m[i]>m[i-1]) do begin
      t:=m[i]; m[i]:=m[i-1]; m[i-1]:=t; Dec(i);
    end;
  end;
  Write('Максимум ',nn,': ',m[nn]);
end.

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

  1. Переменная nn объявляется и инициализируется значением 2.
  2. Объявляются переменные n, i, j, t типа Integer.
  3. Создается массив m типа array[1..nn+1] of Integer, где nn=2.
  4. Выводится запрос на ввод числа для переменной n.
  5. В цикле for с 1 по nn+1 (т.е. от 1 до 2) происходит чтение числа из стандартного ввода и сохранение его в массиве m.
  6. В цикле while проверяется, что i меньше или равно nn и что текущее значение m[i] больше предыдущего. Если это условие выполняется, то переменная t присваивается значению m[i], m[i-1] присваивается значение m[i-1], а i уменьшается на 1. Это позволяет переместить наибольший элемент в конец массива.
  7. Выводится сообщение с максимальным значением в массиве m, которое находится в позиции nn.

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


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

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

14   голосов , оценка 3.5 из 5
Похожие ответы