pasmax20.PAS

{* Второй по величине максимальный элемент *}

Unit PASMAX20;
Interface
Implementation
Begin
 writeln('Нахождение второго по величине максимального (минимального) значения в массиве');
End.

Program pasmax20;

Uses pasmax20.pas; {* Эту строку можно удалить *}
Const {* Постоянные значения *}
  n = 5;
Const {* Постоянные значения *}
  a : Array [1..n] Of integer =   (7, 7, 7, 7, 6);
Var {* Необходимые переменные *}
  i    : integer;
  max  : integer;
  max2 : integer;
Begin
  max := a[1];
  max2 := - MAXINT;
  For i := 2 To n Do {* Цикл для i => [2 .. n] *}
    If a[i] > max Then
    Begin
      max2 := max;
      max := a[i];
    End;
    Else If (a[i]max2) Then
      max2 := a[i];
  If max2 = - MAXINT Then
    writeln ('max2 incorrect'', max=', max)
  Else writeln ('max2=', max2, ', max=', max);
End.