Урок 15 Задача 5

Урок 15 Задача 5:

Пользователь вводит массив целых чисел из 7 элементов. Найдите из них два самых больших числа и выведите их на экран.

var
  a, i, j:integer;
  m: array [1..7] of integer;
begin
  for i:=low(m) to high(m) do     // обходим массив через цикл для инициализации
  begin
    write('Введите число: ');
    readln (m[i]);
  end;
  for i:=low(m) to 2 do           // внешний цикл, достаточно 2 витка, т.к. нужно получить 2 самых больших числа
    for j:=low(m) to high(m)-i do // вложенный цикл для сравнения и перестановки каждых двух соседних чисел
      if (m[j] > m [j+1]) then    // если число слева больше, чем число справа
      begin
        a:= m[j+1];               // записываем число справа (меньшее) в переменную
        m[j+1]:= m[j];            // числу справа присваиваем значение числа слева (большее значение)
        m[j]:= a;                 // числу слева присваиваем меньшее значение (то, что раньше было числом слева)
      end;                        // в итоге два числа меняются местами, слева - меньшее, справа - большее
  write(m[6], ' ', m[7]);         // выводим предпоследний и последний элементы массива
  readln ();
end.   

Вывод в консоли:

Введите число: 6
Введите число: 44
Введите число: -8
Введите число: 0
Введите число: 335
Введите число: 5
Введите число: 6
44 335