Задание 9 Вариант 2 Самостоятельная работа 4 ГДЗ Рабочая тетрадь Босова 11 класс (Информатика)
Наибольший элемент равен:……………………….
program s4_v2_9;
const
n = 11;
var
b: array[1..n] of real;
i: integer;
max: real;
begin
writeln(‘ввод массива’);
//randomize;
for i := 1 to n do
begin
readln(b[i]);
//b[i] := random * 20 — 10;
//writeln(‘b[‘, i, ‘]=’, b[i])
end;
max := b[1];
for i := 2 to n do
if b[i] > max then max := b[i];
writeln(‘max=’, max);
end.
Наибольший элемент равен: 63
В программе предусмотрен (в комментариях) ввод массива через генератор случайных чисел. Можно воспользоваться им, для этого убрать // и закомментировать ввод с клавиатуры. Для изменения количества элементов измените n.
Чтобы найти наибольший элемент массива, достаточно взять первый элемент за текущий максимум и последовательно сравнивать с ним все остальные элементы. Если встречается число больше текущего максимума, то обновляем значение максимума.
program s4_v2_9;
const
n = 11;
var
b: array[1..n] of real;
i: integer;
max: real;
begin
writeln(‘ввод массива’);
for i := 1 to n do
begin
readln(b[i]);
end;
max := b[1];
for i := 2 to n do
if b[i] > max then max := b[i];
writeln(‘max=’, max);
end.
Проверим программу на массиве $$B = \{63,\, 7.2,\, -4.5,\, 0,\, -10,\, 14,\, -310,\, 50,\, 11,\, -14,\, 5\}.$$
Сравниваем элементы по порядку:
- начальный максимум: $$63$$;
- $$7.2 < 63$$, максимум не меняется;
- $$-4.5 < 63$$, максимум не меняется;
- $$0 < 63$$, максимум не меняется;
- $$-10 < 63$$, максимум не меняется;
- $$14 < 63$$, максимум не меняется;
- $$-310 < 63$$, максимум не меняется;
- $$50 < 63$$, максимум не меняется;
- $$11 < 63$$, максимум не меняется;
- $$-14 < 63$$, максимум не меняется;
- $$5 < 63$$, максимум не меняется.
Следовательно, наибольший элемент массива равен $$63$$.
Ответ
$$63$$