Найти три наибольших элемента одномерного массива X(20) - Turbo Pascal

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

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

Найти три наибольших элемента одномерного массива X(20) Мучаюсь уже очень долгое время. Дописал, но считает не правильно. Помогите разобраться.

Решение задачи: «Найти три наибольших элемента одномерного массива X(20)»

textual
Листинг программы
uses crt;
const n=10;
var a:array [1..n] of integer;
i,max1,max2,max3,nmax1,nmax2,nmax3:integer;
begin
clrscr;
randomize;
writeln('Massive :');
for i:=1 to n do
begin
        a[i]:=random(100);
        write(a[i],' ');
end;
writeln;
max1:=-maxint;
max2:=-maxint;
max3:=-maxint;
for i:=1 to n do
if a[i]>max1 then
begin
        max1:=a[i];
        nmax1:=i;
end;
for i:=1 to n do
if a[i]>max2 then
if i<>nmax1 then
begin
        max2:=a[i];
        nmax2:=i;
end;
for i:=1 to n do
if a[i]>max3 then
if (i<>nmax1) and (i<>nmax2) then
begin
        max3:=a[i];
        nmax3:=i;
end;
writeln;
writeln('Max 1 = a[',nmax1,']=',max1);
writeln('Max 2 = a[',nmax2,']=',max2);
writeln('Max 3 = a[',nmax3,']=',max3);
 
readkey;
end.

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

Код начинается с использования библиотеки crt, которая позволяет использовать клавиатуру для ввода данных. Затем определяется переменная n, которая представляет собой максимальное количество элементов в массиве. Далее объявляются переменные a, max1, max2, max3, nmax1, nmax2, nmax3, которые представляют собой массив целых чисел, а также три переменные-максимума и три переменные-номера этих максимумов. Затем происходит инициализация массива a случайными числами от 0 до 99. Далее выполняется три цикла, которые служат для поиска трех наибольших элементов в массиве. В каждом цикле проверяется, является ли текущий элемент наибольшим из тех, что были найдены ранее. Если это так, то обновляется значение max1, max2 и max3, а также обновляется значение nmax1, nmax2 и nmax3. После завершения последнего цикла выводятся на экран значения max1, max2 и max3, а также номера этих максимумов. В конце программы предлагается ввести любой символ, чтобы завершить выполнение программы.

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


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

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

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