Складываешь числа.и делишь на их кол-во,как и везде
udalova-yelena
24.02.2020
Var mas: array [,] of integer; i,j,m,n,s,max: integer; f:boolean; begin write('Введите размерность массива: '); readln(n); write('Введите число m: '); readln(m); setlength(mas,n+1,n+1); for i:=1 to n do begin; for j:=1 to n do begin mas[i,j]:=random(-m,m); write(mas[i,j]:6); if (j>i) and (mas[i,j]=0) then s:=s+1; end; writeln; end; j:=n; f:=false; for i:=1 to n do begin if (mas[i,j] mod 2=0) then begin if f=false then begin max:=mas[i,j]; f:=true; end; if (mas[i,j]>max) then max:=mas[i,j]; end; j:=j-1; end; writeln('Число нулей над гл.диагональю: ',s); writeln('Максимальный четный на доп.диагонали: ',max); end.
Alisa
24.02.2020
//PascalABC.NET 3.2 сборка 1318
Const n=3; m=4;
Var ma:array[1..n,1..m] of integer; ZeroCount:array[1..m] of integer; i,j,k,buf:integer; begin for i:=1 to n do for j:=1 to m do readln(ma[i][j]); writeln('Matrix:'); for i:=1 to n do begin for j:=1 to m do write(ma[i][j]:4); writeln; end; writeln('Count of zero elements:'); for j:=1 to m do begin for i:=1 to n do if ma[i][j]=0 then inc(ZeroCount[j]); writeln(j,':',ZeroCount[j]); end; for i:=1 to m-1 do for j:=i+1 to m do if ZeroCount[i]<ZeroCount[j] then begin for k:=1 to n do begin buf:=ma[k][i]; ma[k][i]:=ma[k][j]; ma[k][j]:=buf; end; buf:=ZeroCount[i]; ZeroCount[i]:=ZeroCount[j]; ZeroCount[j]:=buf; end; writeln('Final matrix:'); for i:=1 to n do begin for j:=1 to m do write(ma[i][j]:4); writeln; end; end.
Пример работы программы: Matrix: 2 0 0 -1 0 0 1 -1 -2 -2 1 -2 Count of zero elements: 1:1 2:2 3:1 4:0 Final matrix: 0 2 0 -1 0 0 1 -1 -2 -2 1 -2
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Как в языке паскаль обозначается среднее арифметическое?
В зависимости от кол-ва чисел