В программе паскаль
Модератор: Модераторы
В программе паскаль
В одномерном массиве найти разность наибольшего и наименьшего элементов
Код: Выделить всё
program diff_array1;
uses
Math;
var
arr: array [1..10] of integer = (2, 1, 5, 10, 6, 9, 7, 8, 3, 5);
I: integer;
begin
I := MaxValue(arr) - MinValue(arr);
Writeln(I);
Readln;
end. Добавлено спустя 28 минут 53 секунды:
Код: Выделить всё
program diff_array2;
uses
Math;
var
arr: array [1..10] of integer = (2, 1, 5, 10, 6, 9, 7, 8, 3, 5);
I, L, H: integer;
begin
L := low(arr);
H := L;
for I := low(arr) to high(arr) do
begin
H := Max(H, arr[I]);
L := Min(L, arr[I]);
end;
I := H - L;
Writeln(I);
Readln;
end. Добавлено спустя 6 минут 22 секунды:
Код: Выделить всё
program diff_array3;
var
arr: array [1..10] of integer = (2, 1, 5, 10, 6, 9, 7, 8, 3, 5);
I, L, H: integer;
begin
L := low(arr);
H := L;
for I := low(arr) to high(arr) do
begin
if H < arr[I] then
H := arr[I];
if L > arr[I] then
L := arr[I];
end;
I := H - L;
Writeln(I);
Readln;
end.Если по учёбе, то последний вариант как реализация. Первые два используют RTL функции.
Update: Заменил динамическую рандомную инициализацию массива на статическую. Можно отрицательные числа вставлять. Результат будет везде одинаков (если arr будет везде одинаков).
