Swift程序计算矩阵右对角线之和


矩阵是由行和列排列的数字的排列。矩阵有两个对角线,即右对角线和左对角线。因此,这里我们使用Swift编程计算正方形矩阵的右对角线的和。

例如,我们有以下矩阵:

Matrix = 3 4 5 
         5 3 2
         1 8 1

右对角线元素为 5、3、1。因此,右对角线的和为 9(5+3+1)。

算法

  • 步骤 1 - 创建一个函数。

  • 步骤 2 - 创建一个名为 sum 的变量来存储总和。sum 的初始值为 0。

  • 步骤 3 - 运行嵌套的 for-in 循环以遍历每一行和每一列。

  • 步骤 4 - 在此嵌套循环中,将所有右对角线元素加在一起并将结果存储到 sum 变量中。

  • 步骤 5 - 返回 sum。

  • 步骤 6 - 创建一个正方形矩阵并将其与矩阵的大小一起传递给函数。

  • 步骤 7 - 打印输出。

示例

以下是打印矩阵右对角线之和的 Swift 程序。

import Foundation
import Glibc

// Function to print the sum of right diagonal of the square matrix
func printRightDiagonalSum(mxt:[[Int]], size: Int) -> Int {
   var sum = 0
   for x in 0..<size {
      for y in 0..<size {
         if ((x+y) == (size-1)) {
            sum += mxt[x][y]
         }
      }
   }
   return sum
}

// 3x3 square matrix
var M = [[2, 3, 4], [1, 2, 4], [5, 3, 1]]

print("Matrix:")
for x in 0..<3 {
   for y in 0..<3 {
      print(M[x][y], terminator:" ")       
   }
   print()
}

// Calling the function and passing 
// the size of the square matrix
print("\nSum of the right diagonal elements is:", printRightDiagonalSum(mxt: M, size: 3))

输出

Matrix:
2 3 4 
1 2 4 
5 3 1 

Sum of the right diagonal elements is: 11

在上面的代码中,我们创建了一个函数来打印正方形矩阵的右对角线之和。我们知道行和列的大小相同,因此在我们的例子中,大小为 3,表示行数 = 3,列数 = 3。因此,在此函数中,我们使用嵌套的 for-in 循环,它遍历每一行和每一列。然后检查行和列索引是否相同,即对于右对角线元素((x+y)==(S-1))。然后将所有元素加在一起并返回总和,即 11。

结论

因此,这就是我们如何计算矩阵右对角线之和的方法。此方法仅适用于正方形矩阵。如果要使用其他类型的矩阵,则需要对代码进行一些更改。

更新于:2023年7月19日

241 次浏览

开启您的职业生涯

通过完成课程获得认证

开始学习
广告