Известно, что в массиве все элементы различны. Найти в нем два наибольших элемента - Turbo Pascal

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

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

Известно, что в массиве все элементы различны. Найти в нем два наибольших элемента.

Решение задачи: «Известно, что в массиве все элементы различны. Найти в нем два наибольших элемента»

textual
Листинг программы
  1. Var A:array[1..100] of integer;
  2.     i,imax1,imax2,n:integer;
  3. Begin
  4.     write('Кол-во элементов: ');readln(n);
  5.     For i:=1 to n do
  6.     Begin
  7.       write('A[',i,'] = ');
  8.       readln(A[i]);
  9.     End;
  10.     imax1:=1;
  11.     For i:=1 to n do
  12.      if A[i]>A[imax1] then imax1:=i;
  13.     For i:=1 to n do
  14.      if i<>imax1 then break;
  15.     imax2:=i;
  16.     For i:=1 to n do
  17.      if (A[i]>A[imax2])and(i<>imax1) then imax2:=i;
  18.     writeln;
  19.     writeln('Max1 = ',A[imax1]);
  20.     writeln('Max2 = ',A[imax2]);
  21.     readln;
  22. End.

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

В данном коде происходит следующее:

  1. Создается переменная A типа array[1..100] of integer; - создается массив из 100 элементов целых чисел.
  2. Задаются три переменные: i, imax1, imax2 - они будут использоваться для поиска наибольших элементов в массиве.
  3. Выводится запрос на ввод количества элементов в массиве - считывается число n.
  4. Запускается цикл for, который проходит по каждому элементу массива A от 1 до n. Внутри цикла выводится значение каждого элемента массива A[i].
  5. Внутри цикла for инициализируется переменная imax1 значением 1. Она будет использоваться для хранения текущего наибольшего элемента.
  6. Запускается еще один цикл for, который проходит по каждому элементу массива A от 1 до n. Внутри цикла проверяется условие: если значение A[i] больше значения переменной imax1, то переменная imax1 обновляется значением i.
  7. После завершения первого цикла for, запускается еще один цикл for. Он также проходит по каждому элементу массива A от 1 до n. Внутри цикла проверяется условие: если значение A[i] больше значения переменной imax2 и i не равно imax1, то переменная imax2 обновляется значением i.
  8. По завершении второго цикла for выводятся на экран значения наибольших элементов массива A[imax1] и A[imax2].
  9. Запрашивается ввод с клавиатуры, и программа завершается.

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


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

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

6   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы