Программа нахождения среднего роста школьников и рост самого высокого школьника - Turbo Pascal
Формулировка задачи:
составте программу нахождения среднего роста школьников и рост самого высокого школьника, если заранее неизвестно сколько всего школьников придут на медосмотр
Решение задачи: «Программа нахождения среднего роста школьников и рост самого высокого школьника»
textual
Листинг программы
uses Crt;
var height, max, sum : real;
i, j : byte;
BEGIN
ClrScr;
i:= 0;
sum:= 0;
max:= 0;
Repeat
Inc(i);
Write('Введите рост ', i, ' школьника: ');
ReadLn(height);
sum:= (sum + height);
if height>max then
begin
max:= height;
j:= i;
end;
Until (height=0);
if sum>0 then
begin
sum:= sum/(i-1);
WriteLn('Средний рост = ', sum:4:2);
WriteLn('Максимальный рост = ', max, ' у школьника № ', j);
end
else WriteLn('Неудачный медосмотр. :)');
END.
Объяснение кода листинга программы
- В начале кода подключается библиотека Crt, которая содержит функции для работы с памятью.
- Переменные height, max и sum инициализируются как 0.
- Затем начинается цикл Repeat, который будет выполняться до тех пор, пока пользователь не введет ноль (что означает конец ввода данных).
- Внутри цикла переменная i инкрементируется на 1.
- Затем пользователю предлагается ввести рост школьника. Чтение этого значения происходит с помощью функции ReadLn.
- Значение роста добавляется к сумме (sum := sum + height).
- Если рост больше максимального, то обновляется значение максимального роста и переменной j, которая будет использоваться для записи результата.
- После окончания цикла Repeat выводится средний рост (если он был рассчитан) и максимальный рост.
- Если сумма ростов равна 0 (что означает, что ввод данных был завершен), выводится сообщение об успешном медицинском осмотре. В противном случае выводится сообщение об неудачном медицинском осмотре.