Вопрос задан 27.02.2019 в 08:51. Предмет Информатика. Спрашивает Шевченко Аэлита.

Паскаль. Дана действительная матрица размера n×m, в которой есть хотя бы один ненулевой элемент.

Получите новую матрицу путем деления всех элементов заданной на ее наибольший по абсолютной величине элемент
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Косьмина Полина.
Const
    m = 5;
    n = 4;
Var
    A: array[1..m, 1..n] of real;
    i, j: integer;
    max: real;
Begin
    for i := 1 to m do begin
        writeln();
        for j := 1 to n do begin
            A[i,j] := random(200) - 100;
            write(A[i,j]:5, ' ');
 
            if ((i=1) and (j=1)) or (max < abs(A[i,j])) then
                max:=abs(A[i,j]);
        end;
    end;
   
    writeln();
    writeln('Max = ', max);
 
    for i := 1 to m do begin
        writeln();
        for j := 1 to n do begin
            A[i,j] := A[i,j] / max;
            write(A[i,j]:5:2, ' ');
        end;
    end;
End.
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для получения новой матрицы путем деления всех элементов заданной матрицы на ее наибольший по абсолютной величине элемент, можно использовать язык программирования Паскаль. Вот пример кода на Паскале, который реализует данную операцию:

```pascal program DivideMatrix;

const MAX_SIZE = 100;

type Matrix = array[1..MAX_SIZE, 1..MAX_SIZE] of Real;

var originalMatrix, newMatrix: Matrix; n, m: Integer; maxElement: Real; i, j: Integer;

procedure DivideMatrixByMaxElement(var originalMatrix, newMatrix: Matrix; n, m: Integer; maxElement: Real); begin for i := 1 to n do begin for j := 1 to m do begin newMatrix[i, j] := originalMatrix[i, j] / maxElement; end; end; end;

begin // Ввод размеров матрицы WriteLn('Введите количество строк матрицы:'); ReadLn(n); WriteLn('Введите количество столбцов матрицы:'); ReadLn(m);

// Ввод элементов матрицы WriteLn('Введите элементы матрицы:'); for i := 1 to n do begin for j := 1 to m do begin ReadLn(originalMatrix[i, j]); end; end;

// Нахождение наибольшего элемента maxElement := originalMatrix[1, 1]; for i := 1 to n do begin for j := 1 to m do begin if Abs(originalMatrix[i, j]) > Abs(maxElement) then begin maxElement := originalMatrix[i, j]; end; end; end;

// Деление матрицы на наибольший элемент DivideMatrixByMaxElement(originalMatrix, newMatrix, n, m, maxElement);

// Вывод новой матрицы WriteLn('Новая матрица:'); for i := 1 to n do begin for j := 1 to m do begin Write(newMatrix[i, j]:0:2, ' '); end; WriteLn; end; end. ```

В этом примере мы сначала вводим размеры матрицы и ее элементы. Затем находим наибольший элемент в матрице и выполняем деление всех элементов на него. Результат выводится в виде новой матрицы.

Примечание: Представленный код является примером и может потребовать доработки в зависимости от конкретных требований и особенностей языка программирования Паскаль, который вы используете.

Надеюсь, это поможет вам понять, как получить новую матрицу путем деления всех элементов заданной на ее наибольший по абсолютной величине элемент с использованием языка программирования Паскаль. Если у вас возникнут дополнительные вопросы, пожалуйста, дайте мне знать!

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос