Вмассиве из 5 элементов, заданных с клавиатуры, найдите разность между наибольшим и наименьшим элементом (pascal abc)
Ответы на вопрос:
var
a: array[1..5] of integer;
i, z, x: integer;
begin
z : = -1;
x: =1;
for i : = 1 to 5 do
begin
read(a[i]);
if (a[i] > z) then z : = a[i];
if (a[i] < x) then x : = a[i];
end;
writeln(z - x);
end.
ты поддерживаешь переменные min и max для хранения наибольшего и наименьшего элементов массива. когда ты вводишь элемент, ты проверяешь - если введённый элемент больше наибольшего, ты обновляешь наибольший. если введённый элемент меньше наименьшего, ты обновляешь наименьший.
важно задать min и max такие начальные значения, чтобы наибольший и наименьший элементы посчитались правильно. для этого max нужно присвоить настолько большое значение, что при проверке его не будут вводить. для min нужно задать маленькое значение, которое тоже гарантированно не будет введено. обычно диапазон вводимых чисел оговаривается в условии.
кодvar
a: array[1..5] of integer;
i, max, min: integer;
begin
max : = -32000;
min : = 32000;
for i : = 1 to 5 do
begin
read(a[i]);
if a[i] > max then max : = a[i];
if a[i] < min then min : = a[i];
end;
writeln(max - min);
end.
Популярно: Информатика
-
Вера7777713.04.2020 07:57
-
Денис111111111119119.05.2022 18:10
-
ryssik04.11.2022 11:37
-
shalamova0720012.11.2021 20:32
-
Mishgan2109.12.2022 21:54
-
kseniy2000130.05.2022 00:13
-
gamer222219.06.2020 19:03
-
ДианаDi111105.05.2021 12:42
-
TiltPro02.03.2023 11:18
-
aliksondrrr308.11.2021 00:12