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

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

n = 9;
var
a: array[1..n, 1..n] of integer;
i, j, aii: integer;
begin
Randomize;
Writeln('Исходный массив');
for i := 1 to n do
begin
for j := 1 to n do
begin
a[i, j] := Random(101) - 50;
Write(a[i, j]:4)
end;
Writeln
end;
Writeln('Результирующий массив');
for i := 1 to n do
begin
aii:=a[i,i];
for j:=1 to n do
begin
if a[i,j]<aii then a[i,j]:=1 else a[i,j]:=0;
Write(a[i,j]:4)
end;
Writeln
end
end.
Тестовое решение:
Исходный массив
-11 19 48 32 -6 -39 -45 -13 -27
44 20 -44 27 -50 14 -19 -12 32
2 48 -16 40 -8 -38 35 -15 41
-1 -24 -18 35 -49 -11 22 -4 -1
36 -26 -8 -2 -9 -17 41 44 -13
0 -25 -6 -35 -18 -6 -28 46 44
5 -1 -23 36 47 -41 -30 7 -39
41 -41 19 17 -45 5 -35 -4 -36
-11 -46 6 -50 49 -2 26 -15 -40
Результирующий массив
0 0 0 0 0 1 1 1 1
0 0 1 0 1 1 1 1 0
0 0 0 0 0 1 0 0 0
1 1 1 0 1 1 1 1 1
0 1 0 0 0 1 0 0 1
0 1 0 1 1 0 1 0 0
0 0 0 0 0 1 0 0 1
0 1 0 0 1 0 1 0 1
0 1 0 1 0 0 0 0 0



Давайте разберемся с задачей шаг за шагом. Пусть у нас есть квадратная матрица \(A\) порядка 9:
\[ A = \begin{bmatrix} a_{11} & a_{12} & \ldots & a_{19} \\ a_{21} & a_{22} & \ldots & a_{29} \\ \vdots & \vdots & \ddots & \vdots \\ a_{91} & a_{92} & \ldots & a_{99} \end{bmatrix} \]
Мы хотим создать новую матрицу \(B\) того же порядка, где элемент \(b_{ij}\) будет равен 1, если соответствующий элемент \(a_{ij}\) матрицы \(A\) меньше элемента \(a_{ii}\) в той же строке (на главной диагонали), и равен 0 в противном случае.
Итак, мы создадим матрицу \(B\) следующим образом:
\[ B = \begin{bmatrix} 1 & 0 & \ldots & 0 \\ 1 & 1 & \ldots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 1 & 1 & \ldots & 1 \end{bmatrix} \]
Для создания такой матрицы программно, вы можете использовать циклы для прохода по каждому элементу матрицы и проверки условия. В зависимости от результата сравнения вы устанавливаете соответствующее значение в матрице \(B\).
Пример кода на Python:
```python # Создаем матрицу A A = [[a_ij for a_ij in range(1, 10)] for _ in range(1, 10)]
# Создаем и заполняем матрицу B B = [[1 if a_ij < A[i][i] else 0 for a_ij in row] for i, row in enumerate(A)]
# Выводим результат for row in B: print(row) ```
Обратите внимание, что в приведенном примере используется генератор списков для создания матрицы B на основе условия. Вы можете адаптировать этот код под свой конкретный язык программирования, если он отличается от Python.


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







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili