编写程序求某一方阵中对角线元素和,要求考虑主对角线和副对角线
时间: 2024-05-15 10:12:09 浏览: 82
C语言 实现3X3矩阵主对角线和副对角线求和
这里给出一个Python的例子代码,可以计算方阵中主对角线和副对角线的元素和:
```python
def diagonal_sum(matrix):
n = len(matrix)
sum1 = sum(matrix[i][i] for i in range(n)) # 计算主对角线元素和
sum2 = sum(matrix[i][n-i-1] for i in range(n)) # 计算副对角线元素和
return sum1 + sum2 # 返回总和
# 测试代码
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
print(diagonal_sum(matrix)) # 输出:25
```
这个代码中,我们首先定义了一个 `diagonal_sum` 函数,它接受一个方阵 `matrix` 作为输入。然后,我们使用 `len` 函数获取方阵的大小,即行数和列数均为 $n$。接着,我们使用列表推导式计算主对角线元素和和副对角线元素和,最后将两者相加并返回。注意,副对角线元素的下标为 $n-i-1$,其中 $i$ 是行数从 $0$ 到 $n-1$ 的循环变量。
在测试代码中,我们定义了一个 $3\times 3$ 的方阵 `matrix`,并将其作为输入传递给 `diagonal_sum` 函数。输出结果为 `25`,即主对角线和副对角线的元素和。
阅读全文