A713

Задача

Следом квадратной матрицы называется сумма элементов, расположенных на главной диагонали.

Даны квадратная матрица порядка m, натуральное число n. Вычислить следы матриц [latex]A, A^{2}, … , A^{n}[/latex].

Тесты

[latex]m[/latex] [latex]n[/latex] [latex]A[/latex] следы [latex]A, A^{2}, … , A^{n}[/latex] Комментарий
3 4  [latex]\begin{pmatrix} 1 & 2 & 3\\ 1 & 2& 3 \\ 1 & 2 & 3 \end{pmatrix}[/latex] 6 36 216 1296 Пройден
 2  5  [latex]\begin{pmatrix} 1 & 2\\ 3 & 4 \end{pmatrix}[/latex]  5 29 155 833 4475  Пройден
Код
C++
Java
Решение

 Находим след исходной матрицы вне цикла. После, в цикле перемножаем матрицы и находим следы уже полученных матриц.

Решение на ideone: (C++) (Java).

Related Images:

2 thoughts on “A713

  1. Программа работает правильно, все случаи предусмотрены, есть небольшие замечания по стилю программирования: вычисления следа у Вас встречается два раза в программе, да еще и входит в условие задачи — логично было бы выделить в отдельную функцию. Правда, только сейчас сообразил, что с этим будут проблемы, т.к. Вы использовали runtime-sized матрицу. Еще переменные желательно делать как можно более локальными, например, если перенести переменную sum с начальной инициализацией в цикл по z, то не потребовался бы оператор строки 39 sum=0;, который в Вашем случае легко забыть.

    Зачтено.

  2. Засчитана Java версия. Но у Вас высвечивается Formula does not parse – проверьте формулы.

    Также замечу, что обычно имена переменных в Java начинаются с маленьких букв. А у Вас имена матриц начинаются заглавные буквы — правда с точки зрения математики так логичнее.

Добавить комментарий