Найти произведение максимального и минимального членов произвольного одномерного массива - Pascal
Формулировка задачи:
1.
Найти произведение максимального и минимального по значению членов произвольного одномерного массива действительных чисел.Решение задачи: «Найти произведение максимального и минимального членов произвольного одномерного массива»
textual
Листинг программы
var
ar: Array[Byte] Of Double;
i, n, minId, maxId: Byte;
begin
repeat
Write('Input n=');
ReadLn(n);
until (n > 0);
minId := 0; maxId := 0;
Randomize();
for i := 0 to n - 1 do
begin
ar[i] := Random * 198 - 99;
Write(ar[i]:8:3);
if (ar[i] < ar[minId])
then
minId := i;
if (ar[i] > ar[maxId])
then
maxId := i;
end;
WriteLn;
Write('Max*Min=', (ar[minId] * ar[maxId]):0:3);
end.
Объяснение кода листинга программы
- Объявляется массив ar типа Array[Byte] Of Double и переменные i, n, minId, maxId типа Byte.
- Пользователю предлагается ввести значение переменной n, пока n не будет больше 0.
- Задаются начальные значения minId и maxId как 0.
- Инициализируется генератор случайных чисел.
- В цикле от 0 до n - 1 каждому элементу массива ar[i] присваивается случайное значение в диапазоне от -99 до 99.
- Значения массива выводятся на экран.
- Если значение элемента ar[i] меньше значения ar[minId], minId присваивается значение i.
- Если значение элемента ar[i] больше значения ar[maxId], maxId присваивается значение i.
- Значения элементов массива выводятся на экран.
- На экран выводится произведение максимального и минимального элементов массива: (ar[minId] * ar[maxId]).