А396

Задача. Дана действительная квадратная матрица порядка n. Построить последовательность действительных чисел [latex]a_{1}\cdots a_{n}[/latex] по правилу: если в i-й строке матрицы элемент, принадлежащий главной диагонали, отрицателен, то [latex]a_{i}[/latex] равно сумме элементов i-й строки, предшествующих первому отрицательному элементу, в противном случае [latex]a_{i}[/latex] равно сумме последних элементов i-й строки, начиная с первого по порядку неотрицательного элемента.

Тесты:

Данная матрица Последовательность Комментарий
[latex]\begin{Vmatrix}1 & 2 & -3 & 4\\ 3 & 5 & 6 & 7\\ 1 & 3 & 0 & 6\\ -5 & 7 & 2 & -9\end{Vmatrix}[/latex] 4 21 10 0 Пройден
[latex]\begin{Vmatrix}1 & -2 & 3\\ -7 & -3 & 0\\ 5 & 5 & 2 \end{Vmatrix}[/latex] 2 0 12 Пройден
[latex]\begin{Vmatrix}7 & 7 & 9 & 3\\ 0 & 5 & 0 & 7\\ 4 & 7 & -7 & 2\\ 1 & -4 & 8 & -3\end{Vmatrix}[/latex] 26 12 11 1 Пройден

Код программы:

Для начала мы должны обнулить матрицу [latex]b_{1}\cdots b_{n}[/latex], элементы которой являются суммами элементов i-х строк входной матрицы, которую мы также задаем. А далее, с помощью циклов  for , можно оценить диагональные элементы заданной матрицы. И следуя условию, если они отрицательные, то в [latex]b_{i}[/latex] мы просуммируем все элементы данной строки, если они положительные, до первого отрицательного в строчке, а если они положительные, то [latex]b_{i}[/latex] будет равно сумме последних элементов строки (т.е. после диагонального) начиная с первого по порядку неотрицательного элемента. И в конце выводим конечную последовательность [latex]b_{1}\cdots b_{n}[/latex].

Код можно проверить здесь.

Решение на Java:

Код на Java.

A405

Задача

Даны натуральное число [latex]n[/latex], действительная квадратная матрица порядка  [latex]n[/latex]. Построить последовательность [latex] b_1,..,b_n[/latex] из нулей и единиц, в которой [latex] b_i = 1[/latex] тогда и только тогда, когда в [latex]i[/latex] — строке  матрицы есть хотя бы один отрицательный элемент.

Тест

при  [latex]n = 3[/latex]

[latex]b_1[/latex] [latex]b_2[/latex] [latex]b_3[/latex] результат
0 0 0 0 1 0
0 -1 0
0 0 0

при [latex]n = 4[/latex]

[latex]b_1[/latex] [latex]b_2[/latex] [latex]b_3[/latex] [latex]b_4[/latex] результат
0 0 -1 0 1 1 0 1
0 -4 0 0
0 0 0 0
-8 0 0 0

при [latex]n=3[/latex]

[latex]b_1[/latex] [latex]b_2[/latex] [latex]b_3[/latex] результат
-0.75 0.98  4.67 1 0 1
4.89 0 3.75
-9.85 0 2.65

 

 

Ссылка на C++:http:http://ideone.com/KzTDgC

Ссылка на Java: http://ideone.com/EIZdZt

Решение:

Вводим квадратную матрицу [latex] z[n][n][/latex]  порядка  [latex]n[/latex].Далее в цикле описываем, что если :

то каждый элемент  [latex]b_i = 1[/latex], в противном случае  [latex]b_i = 0[/latex].Далее в input вводим количество элементов и соответствующие значения и получаем ответ.