求n*n矩阵对角线之和

程序接收用户通过键盘输入的矩阵数值,然后计算并输出矩阵的对角线元素之和。首先读取矩阵的行数n,接着逐行输入矩阵的每个元素,存储为二维列表。最后,分别计算主对角线和副对角线的和,并依据矩阵的奇偶性决定输出哪条对角线的和。
摘要由CSDN通过智能技术生成

【问题描述】n和矩阵数值均通过键盘输入,使用input()函数是不能有任何参数。
【输入形式】依次输入数据,其中第1行代表n的值,从第2行开始往后代表矩阵数值,比如:

3

1

2

3

4

5

6

7

8

9

【输出形式】使用print函数在屏幕上输出,第1行数据代表列表,第2行数据为矩阵对角线之和,比如:

[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

25

a = eval(input())
d = []
f = []
for i in range(0, a):
    d = []
    for j in range(0, a):
        m = eval(input())
        d.append(m)
    f.append(d)
print(f)
p = 0
t = 0
for n in range(0, a):
    p = p + f[n][n]
g=a
k=0
while g >= 0 and k<a:
    g -= 1
    t = t + f[g][k]
    k+=1
if a % 2 == 0:
    print(p + t)
r=f[(a - 1) //2][(a - 1) // 2]
if a % 2 == 1:
    print(p + t - r)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值