Pascal. Двумерный массив. Получить новую матрицу путем деления всех элементов данной матрицы на ее наименьший по модулю элемент
Pascal. Двумерный массив.
Получить новую матрицу путем деления всех элементов данной матрицы на ее наименьший по модулю элемент
Ответ(ы) на вопрос:
Гость
const n=3; m=4;
var a:array[1..n,1..m] of real;
i,j:integer; min:real;
begin
Randomize;
writeln('Исходная матрица:');
for i:=1 to n do
begin
for j:=1 to m do
begin
a[i,j]:=10*random-5;
write(a[i,j]:6:2);
end;
writeln;
end;
min:=abs(a[i,j]);
for i:=1 to n do
for j:=1 to m do
if abs(a[i,j])
Гость
// PascalABC.NET 3.2, сборка 1415 от 25.03.2017
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк в массиве:');
var m:=ReadInteger('Количество столбцов в массиве:');
Writeln('*** Исходный массив [',n,',',m,'] ***');
var a:=new real[n,m];
for var i:=0 to n-1 do
for var j:=0 to m-1 do
a[i,j]:=Random(5,90);
a.Println(3,0); Writeln;
var p:=a.ElementsByRow.Min;
for var i:=0 to n-1 do
for var j:=0 to m-1 do
a[i,j]:=a[i,j]/p;
a.Println(7,3)
end.
Пример
Количество строк в массиве: 4
Количество столбцов в массиве: 7
*** Исходный массив [4,7] ***
83 87 11 18 74 78 24
45 28 59 56 14 67 5
74 65 48 79 68 45 37
52 70 16 82 5 51 70
16.600 17.400 2.200 3.600 14.800 15.600 4.800
9.000 5.600 11.800 11.200 2.800 13.400 1.000
14.800 13.000 9.600 15.800 13.600 9.000 7.400
10.400 14.000 3.200 16.400 1.000 10.200 14.000
Не нашли ответ?
Похожие вопросы