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
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.
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
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.