Larryeric 发表于 2023-4-12 18:01:28

求助

# -*- coding: utf-8 -*-
'''
函数代码请只在 "
##########start 下面可以改动

##########end 上面可以改动 "

中间部分作答,作答行数自由调整


题目:已知一个3*3矩阵A,A的元素依次为1-9的平方
|1^2 2^2 3^2|
A=|4^2 5^2 6^2|,求该矩阵主对角线元素之和。
|7^2 8^2 9^2|
程序分析:利用双重for循环控制输入二维数组,再将a累加后输出。  
'''



def TEST_DO_NOT_CHANGE():
    rlt_sum=0
    A = [,
         ,
         ,
         ]
    ##########start下面可以改动




    ##########end 上面可以改动 "
    return rlt_sum

   
if __name__ == "__main__":
    print (TEST_DO_NOT_CHANGE())
    #######下面可以添加测试语句
   
有没有简单的函数 我是新手 不会二维数组计算

isdkz 发表于 2023-4-12 18:03:03

当然可以简化,针对这个特定问题,我们可以直接计算主对角线元素之和,而不需要使用双重循环。

请参考以下代码:

# -*- coding: utf-8 -*-

def diagonal_sum():
    A = [
      ,
      ,
      
    ]
   
    # 只需计算主对角线元素之和
    rlt_sum = A + A + A
    return rlt_sum

if __name__ == "__main__":
    print(diagonal_sum())

这里我们直接计算了主对角线上的元素之和,而无需使用嵌套循环。这样的代码对于新手来说更易理解。
页: [1]
查看完整版本: 求助