Найти минимальное и второе по величине значение массива - PascalABC.NET
Формулировка задачи:
заполнить массив 10 рандомными числами в пределах 100. вывести минимальное число и его номер и предминимум и тоже его номер
Решение задачи: «Найти минимальное и второе по величине значение массива»
textual
Листинг программы
- const n=10;
- var
- a:array[1..n] of integer;
- i,j,d1,d2:integer;
- begin
- randomize;
- for i:=1 to n do a[i]:=random(0,100);
- writeln(a);
- d1:=1;d2:=1;
- for i:=2 to n do
- if a[i]<a[d1] then begin
- d2:=d1;
- d1:=i;
- end else
- if ((d1=d2) and (a[i]>a[d2])) or ((a[i]<a[d2]) and (i<>d1) and (a[i]>a[d1])) then d2:=i;
- WritelnFormat('A({1})={0}, A({3})={2}',a[d1],d1,a[d2],d2);
- end.
Объяснение кода листинга программы
- Задается константа n=10, которая определяет размер массива.
- Создается массив a размером n и заполняется случайными числами в диапазоне от 0 до 100 с помощью цикла for и функции random.
- Выводится содержимое массива a с помощью функции writeln.
- Инициализируются переменные d1, d2, которые будут использоваться для поиска минимального и второго по величине значения массива.
- Переменная d1 инициализируется значением 1, а переменная d2 - значением 1.
- Цикл for i=2 до n выполняет следующие действия:
- Если элемент массива a[i] меньше, чем элемент массива a[d1], то выполняются следующие действия:
- Переменной d2 присваивается значение d1.
- Переменной d1 присваивается значение i.
- Если элемент массива a[i] равен a[d1] и a[i] больше, чем a[d2], или если элемент массива a[i] меньше, чем a[d1] и i не равно d1 и a[i] больше, чем a[d1], то переменной d2 присваивается значение i.
- Выводится сообщение с минимальным и вторым по величине значением массива a с помощью функции WritelnFormat.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д