Самое худшее, что можно придумать, это сделать именно процедуру.
Ниже вариант с процедурой, а потом другой, без процедур. Можно сравнить...
// PascalABC.NET 3.2, сборка 1509 от 27.07.2017
// Внимание! Если программа не работает, обновите версию!
---- Вариант с процедурой ----
procedure MassAvg(var r:real);
begin
r:=ReadSeqInteger('Вводите:',ReadInteger('n=')).Average
end;
begin
var avg:real;
for var i:=1 to 3 do begin
MassAvg(avg);
Writeln('Среднее значение: ',avg)
end
end.
---- Вариант без процедур и функций ----
begin
for var i:=1 to 3 do begin
Writeln('Среднее значение: ',
ReadSeqInteger('Вводите:',ReadInteger('n=')).Average)
end
end.
Результат
n= 7
Вводите: -5 4 11 8 0 5 4
Среднее значение: 3.85714285714286
n= 5
Вводите: 100 32 52 43 19
Среднее значение: 49.2
n= 4
Вводите: 6 6 8 7
Среднее значение: 6.75