1)Дана матрица размером M * N. В каждой строке матрицы отыскать
1)Дана матрица размером M * N. В каждой строке матрицы отыскать малый элемент и наибольший из найденного.2)дана матрица размерами N * N. Поменять местами столбец с наибольшим и столбец содержащий минимальное количество нулевых элементов. Использовать три процедуры (заполнение, смена, вывод).
Задать свой вопрос1)
program Example;
const
m=6; //количество столбцов
n=5; //количество строк
minM=-10; //малое число в матрице
maxM=10; //максимальное число в матрице
var
i,j:integer;
A : array [1..M, 1..N] of integer;
min,max:integer;
begin
randomize;
writeln(Сгенерированная матрица , M, x, N, :);
for i := 1 to M do begin
for j := 1 to N do begin
a[i, j] := minM + random(maxM-minM+1);
write(a[i, j]:4)
end;
writeln;
end;
writeln(Минимальный и максимальный элементы в строках:);
for i := 1 to M do begin
min := a[i, 1]; //начальное значание для малого значения
max := a[i, 1]; //начальное значание для наибольшего значения
for j := 2 to N do
begin
if a[i, j] lt; min then min := a[i, j];
if a[i, j] gt; max then max := a[i, j];
end;
write(В ,i, строке: );
write(минимальный элемент = , min);
writeln( наибольший элемент = , max);
end;
end.
2)
program Example;
const
m=6; //количество столбцов
n=5; //количество строк
minM=-2; //минимальное число в матрице
maxM=2; //наибольшее число в матрице
var
i,j:integer;
A : array [1..M, 1..N] of integer;
min,max:integer;
numMin, numMax, k, Kmin,Kmax:integer;
procedure gen();
begin
randomize;
for i := 1 to M do begin
for j := 1 to N do begin
a[i, j] := minM + random(maxM-minM+1);
end;
end;
end;
procedure print();
begin
writeln(Матрица , M, x, N, :);
for i := 1 to M do begin
for j := 1 to N do begin
write(a[i, j]:4)
end;
writeln;
end;
end;
procedure change();
var
t:integer;
begin
for i := 1 to M do begin
t:=a[i, numMin];
a[i, numMin]:=a[i, numMax];
a[i, numMax]:=t;
end;
end;
begin
gen();
print();
numMin:=1; //начальный номер столбца
numMax:=1;
Kmin:=M;
Kmax:=0;
for j := 1 to N do begin
k:=0;
for i := 1 to M do
begin
if a[i, j] = 0 then k:=k+1;
end;
if klt;Kmin then
begin
Kmin:=k;
numMin:=j;
end;
if kgt;Kmax then
begin
max:=k;
numMax:=j;
end;
end;
change();
print();
end.
-
Вопросы ответы
Статьи
Информатика
Статьи
Математика.
Физика.
Математика.
Разные вопросы.
Разные вопросы.
Математика.
Разные вопросы.
Математика.
Физика.
Геометрия.