Найти среднее арифметическое первого столбца массива - PascalABC.NET

Формулировка задачи:

Писал прогу, надо было найти сначала среднее арифметическое первого столбца массива, потом среднее арифметическое первых двух столбцов массива, потом первых трёх столбцов массива, надо использовать процедуры, в итоге вот что у меня получилось :
const n=3;
type mas=array[1..n,1..n] of real;
procedure srednie_arifmeticheskie1(A:mas; i,j:integer; var sar1: real);
begin
  j := 1;
   sar1 := 0;
   for i := 1 to n do
      sar1 := sar1 + A[i, j];
    writeln('Среднее арифметическое в столбце 1', j, ' = ', sar1 / n:0:2);
  end;
procedure srednie_arifmeticheskie2(A:mas; i,j:integer; var sar1, sar2: real);
begin 
 begin
  j := 1;
   sar1 := 0;
   for i := 1 to n do
      sar1 := sar1 + A[i, j];
    sar1 := sar1 / n;
  end;
 begin
  j := 2;
   sar2 := 0;
   for i := 1 to n do
      sar2 := sar2 + A[i, j];
      sar2 := sar2 / n;
    writeln('Среднее арифметическое в столбце 1 и 2', j, ' = ', ((sar1 + sar2) / 2):0:2);  
   end;
  end; 
procedure srednie_arifmeticheskie3(A:mas; i,j:integer; var sar1, sar2, sar3: real);
begin
 begin
  j := 1;
   sar1 := 0;
   for i := 1 to n do
      sar1 := sar1 + A[i, j];
    sar1 := sar1 / n;
  end;
 begin
  j := 2;
   sar2 := 0;
   for i := 1 to n do
      sar2 := sar2 + A[i, j];
      sar2 := sar2 / n;
      sar2 := (sar1 + sar2) / 2;  
   end;
  begin
   j := 3;
    sar3 := 0;
    for i := 1 to n do
     sar3 := sar3 + A[i, j];
     sar3 := sar3 / n;
      writeln('Среднее арифметическое в столбце 1 , 2 и 3', j, ' = ', ((sar1 + sar2 + sar3) / 3):0:2);  
   end;
  end; 
var
A : mas;
i, j: integer;
sar1, sar2, sar3: real;
 begin
   for i := 1 to n do
    for j := 1 to n do
    begin
      write('A[', i, ',', j, ']=');
      readln(A[i, j]);
    end;
   sar1 :=  srednie_arifmeticheskie1(A);
   sar2 :=  srednie_arifmeticheskie2(A);
   sar3 :=  srednie_arifmeticheskie3(A);
end.
На 4 строчке снизу пишет : Неверное число параметров процедуры. Вопрос, что мне надо исправить в таком случае? Если кто знает, напишите.

Код к задаче: «Найти среднее арифметическое первого столбца массива - PascalABC.NET»

textual
const n=3;
type mas=array[1..n,1..n] of real;
procedure srednie_arifmeticheskie(A:mas; k:integer; var sar: real);
var i,j:integer;
begin
sar := 0;
for j:=1 to k do
for i := 1 to n do
sar := sar + A[i, j];
writeln('Среднее арифметическое в столбцах номер 1..',k,'=', sar / (n*k):0:2);
end;
var
A : mas;
i, j: integer;
sar: real;
begin
for i := 1 to n do
for j := 1 to n do
 begin
  write('A[', i, ',', j, ']=');
  readln(A[i, j]);
 end;
srednie_arifmeticheskie(A,1,sar);
srednie_arifmeticheskie(A,2,sar);
srednie_arifmeticheskie(A,3,sar);
end.

15   голосов, оценка 3.867 из 5


СОХРАНИТЬ ССЫЛКУ