Используя функцию, найти среднее арифметическое положительных элементов матрицы — Pascal(Паскаль)

Program Ex7;
type matrix=array[1..100,1..100] of integer;
     str=integer;
     stl=integer;
procedure vvod(var a1:matrix;var n1:str;var m1:stl);
var i,j:integer;
 begin
  writeln('vvedite kolichestvo strok matrichi');
   readln(n1);
    writeln('vvedite kolichestvo stolbcov matrici');
     readln(m1);
      writeln('vvedite matricu');
       for i:=1 to n1 do
        begin
         for j:=1 to m1 do
          read(a1[i,j]);
           readln;
        end;
 
 end;
procedure vivod(var a1:matrix;var n1:str;var m1:stl);
 var i,j:integer;
  begin
   writeln('ishodnaya matrica');
    for i:=1 to n1 do
     begin
      for j:=1 to m1 do
       write(a1[i,j]:5);
        writeln;
     end;
  end;
function sr(var a1:matrix;var n1:str;var m1:stl):real;
 var i,j,s,k:integer;
     srr:real;
  begin
   s:=0;
    k:=0;
     for i:=1 to n1 do
      begin
   
       for j:=1 to m1 do
        begin
         if a1[i,j]>0 then
          s:=s+a1[i,j];
         inc(k);
        end; 
      end;

    srr:=s/k;
   sr:=srr;
  end;
var a:matrix;
    n:str;
    m:stl;
begin
 vvod(a,n,m);
 vivod(a,n,m);
 writeln('srednee arifmeticheskoe polozhitelnih elementov matrici= ',sr(a,n,m):5:2);
 readln;
end.

Результат работы программы

Leave a Comment

+ 55 = 59