Для решения этой задачи с использованием языка Pascal ABC, нужно выполнить несколько шагов: собрать данные о фамилиях и росте учащихся, вычислить средний рост, а затем вывести фамилии тех учащихся, чей рост меньше этого среднего значения. Ниже приведен пример кода, который поможет вам в решении:
program Uchyashchiesya;
uses crt;
const
MAX_STUDENTS = 100;
var
surnames: array[1..MAX_STUDENTS] of string;
heights: array[1..MAX_STUDENTS] of real;
n, i: integer;
totalHeight, averageHeight: real;
begin
clrscr;
// Ввод количества учащихся
writeln('Введите количество учащихся (максимум ', MAX_STUDENTS, '):');
readln(n);
// Ввод фамилий и роста учащихся
for i := 1 to n do
begin
writeln('Введите фамилию учащегося ', i, ':');
readln(surnames[i]);
writeln('Введите рост учащегося ', i, ' (в сантиметрах):');
readln(heights[i]);
end;
// Вычисление общего роста
totalHeight := 0;
for i := 1 to n do
begin
totalHeight := totalHeight + heights[i];
end;
// Вычисление среднего роста
averageHeight := totalHeight / n;
writeln('Средний рост по классу: ', averageHeight:0:2, ' см');
writeln('Фамилии учащихся с ростом ниже среднего:');
// Вывод фамилий с ростом ниже среднего
for i := 1 to n do
begin
if heights[i] < averageHeight then
writeln(surnames[i]);
end;
readln; // Ожидание нажатия клавиши перед закрытием программы
end.
Объяснение кода:
- В программе определяется максимальное количество учащихся (
MAX_STUDENTS). - Используется массивы для хранения фамилий и роста учащихся.
- Пользователю предлагается ввести количество учащихся, их фамилии и рост.
- Программа вычисляет общий рост и средний рост класса.
- Затем выводятся фамилии тех учащихся, чей рост меньше среднего.
Ваша программа будет работать корректно, если вы введёте соответствующие данные. Удачи в учебе!