Для решения этой задачи нам нужно выполнить несколько шагов:
- Прочитать значения роста учащихся и сохранить их в массив.
- Найти минимальный рост среди тех, кто подходит для баскетбольной команды (рост не менее 180 см).
- Вывести найденное минимальное значение.
Поскольку использование дополнительных переменных запрещено, мы будем использовать только те переменные, которые уже объявлены: i
, x
, y
и s
.
Вот алгоритм на Паскале:
- Прочитать значения в массив
A
.
- Инициализировать переменную
x
максимальным возможным значением роста, чтобы потом искать минимальный рост среди баскетболистов.
- Пройтись по всем элементам массива.
- Если текущий элемент массива (рост учащегося) больше или равен 180 см и меньше текущего значения
x
, то обновить x
.
- По завершении цикла вывести значение
x
, которое будет минимальным ростом среди подходящих для баскетбольной команды.
Теперь перейдем к реализации этого алгоритма на Паскале:
const N = 30;
var
A: array[1.N] of integer;
i, x, y: integer;
s: real;
begin
// Чтение массива A из 30 элементов
for i := 1 to N do
readln(A[i]);
// Инициализация x максимальным возможным значением рост
x := 200;
// Поиск минимального роста среди тех, чей рост >= 180 см
for i := 1 to N do
begin
if (A[i] >= 180) and (A[i] < x) then
x := A[i];
end;
// Вывод минимального роста игроков баскетбольной команды
writeln(x);
end.
Разбор кода:
const N = 30;
- определение константы N, равной 30, что обозначает количество элементов в массиве.
var A: array[1.N] of integer;
- объявление массива A
из 30 целых чисел.
i, x, y: integer;
- объявление целочисленных переменных i
, x
и y
.
s: real;
- объявление переменной s
типа real (вещественное число).
- В цикле
for i := 1 to N do readln(A[i]);
происходит чтение 30 значений и их сохранение в массив A
.
x := 200;
- инициализация переменной x
значением 200.
- В цикле
for i := 1 to N do
происходит проверка каждого элемента массива:
if (A[i] >= 180) and (A[i] < x) then x := A[i];
- если текущий элемент массива больше или равен 180 и меньше текущего значения x
, то обновляем x
.
writeln(x);
- вывод минимального роста среди тех, кто подходит для баскетбольной команды.