📅  最后修改于: 2023-12-03 15:37:14.713000             🧑  作者: Mango
这是一道与数学有关的问题。问题描述如下:
在一个N x N的矩阵中,找出所有主对角线元素之和(从左上角到右下角)。你能写一个程序来解决这个问题吗?
我们可以使用两个for循环来遍历矩阵的主对角线,并将对角线元素相加。代码如下:
def main_diagonal_sum(arr):
n = len(arr)
sum = 0
for i in range(n):
sum += arr[i][i]
return sum
我们首先定义了一个函数main_diagonal_sum
,接受一个由列表组成的二维数组arr
作为参数。然后,我们通过获取arr
的长度来确定矩阵的大小n
。
接下来,我们定义一个变量sum
并初始化为0。然后使用for
循环遍历矩阵的主对角线,并将其元素相加到sum
中。
最后,该函数返回sum
。
下面是一个例子,演示如何使用上述函数:
matrix = [[1, 2, 3],
[4, 5, 6],
[7, 8, 9]]
print("Main diagonal sum:", main_diagonal_sum(matrix))
输出:
Main diagonal sum: 15
我们可以看到,总和为矩阵主对角线上的元素之和,即1+5+9=15。
通过使用上述算法,我们可以编写一个程序来找到矩阵的主对角线元素之和。