Golang 程序求矩阵对角线之和


2022 年 4 月 14 日, Learn eTutorial
1328

如何求矩阵对角线之和

计算方阵两个对角线的和。对于矩阵的第一条对角线,行索引 = 列索引,即当 i = j 时,mat[i][j] 位于第一条对角线上。对于另一条对角线,行索引 = n – 1 – 列索引,即当 i = n-1-j 时,mat[i][j] 位于第二条对角线上。

例如

矩阵=

1 2 3

4 5 6

7 8 9

对角线和 = 1+5+9 = 15

第二对角线和 = 3+5+7 = 15

如何在 Go 程序中求矩阵对角线之和

这里我们展示如何在 Go 语言中求矩阵对角线之和。变量 mat 用于存储矩阵元素,迭代元素为 i,j。变量 sum 存储对角线元素的和。将矩阵的行数和列数读入变量 row, col。读取元素后,使用 for 循环求对角线元素的和。下面是在 Go 程序中使用的步骤。

算法

第一步:导入 fmt

第二步:启动 main() 函数

步骤 3:声明矩阵变量 mat、迭代变量 i,j 和求和变量 sum

步骤 4:将行数和列数读入 row, col

步骤 5:读取矩阵元素

步骤 6 使用 for 循环求对角线元素的和

步骤 7 使用 fmt.println() 打印结果 sum

 

Golang 源代码

                                          package main

import "fmt"

func main() {
    var i, j, row, col int
    var mat [10][10]int

    fmt.Print("Enter the number of rows and columns = ")
    fmt.Scan(&row;, &col;)

    fmt.Println("Enter the matrix items = ")
    for i = 0; i < row; i++ {
        for j = 0; j < col; j++ {
            fmt.Scan(&mat;[i][j])
        }
    }
    sum := 0
    for i = 0; i < row; i++ {
        sum = sum + mat[i][i]
    }     fmt.Println("The sum of matrix diag sum)
}
                                      

输出

Enter the number of rows and columns = 2  2
Enter the matrix items = 
25  18
40  12 The sum of matrix diag