Swift 程序显示上三角矩阵

swiftserver side programmingprogramming更新于 2025/9/17 23:52:17

本文将学习如何编写一个 Swift 程序来显示上三角矩阵。上三角矩阵是指主对角线以下所有元素均为零的矩阵。如下图所示 -

$$\mathrm{\begin{bmatrix} 1 & 4 & 6 & 7 & 8 & 8\newline 0 & 5 & 6 & 8 & 9 & 9\newline 0 & 0 & 6 & 7 & 8 & 3\newline 0 & 0 & 0 & 2 & 1 & 1\newline 0 & 0 & 0 & 0 & 2 & 1\newline 0 & 0 & 0 & 0 & 0 & 3\newline \end{bmatrix}}$$

上三角矩阵

这里 (1, 5, 6, 2, 2, 3) 是主对角线,因此主对角线以下的元素为 0。因此,要创建上三角矩阵,我们需要一个方阵,然后将列小于行的元素转换为零。

算法

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

  • 步骤 2 - 在此函数中,我们首先检查给定矩阵是否为方阵。

  • 步骤 3 - 如果矩阵不是方阵,则显示一条消息。

  • 步骤 4 - 如果矩阵是方阵,则使用嵌套 for 循环遍历每一行,并列。

  • 步骤 5 - 如果列位置小于行位置,则将元素替换为 0。否则,打印元素。

  • 步骤 6 - 创建一个方阵。

  • 步骤 7 - 调用函数并将矩阵作为参数传递给函数。

  • 步骤 8 - 打印输出。

示例

以下 Swift 程序显示上三角矩阵。

import Foundation
import Glibc

// 矩阵的大小
var row = 5
var col = 5

// 打印上三角矩阵的函数
func printUpperTriangle(mxt:[[Int]]){
   if (row != col){
      print("Matrix is not a square matrix!\nso please enter a square matrix")
   } else{
      print("Upper Triangular Matrix:")
      for x in 0..<row{
         for y in 0..<col{
            if(x > y){
               print("0", terminator:" ")
            }
            else{
               print(mxt[x][y], terminator: " ")
            }
         }
         print()
      }
   }
}

// 创建 5x5 整数类型的矩阵
var matrix : [[Int]] = [[1, 3, 4, 5, 2], [2, 6, 7, 5, 7], 
   [1, 5, 3, 1, 4], [2, 4, 3, 2, 4],
   [5, 2, 1, 3, 4]]

print("原始矩阵:")
for x in 0..<row{
   for y in 0..<col{
      print(matrix[x][y], terminator:" ")
   }
   print("\n")
}

// 调用函数
printUpperTriangle(mxt:matrix)

输出

原始矩阵:
1 3 4 5 2 

2 6 7 5 7 

1 5 3 1 4 

2 4 3 2 4 

5 2 1 3 4 

上三角矩阵:
1 3 4 5 2
0 6 7 5 7
0 0 3 1 4
0 0 0 2 4
0 0 0 0 4

上面的代码中,我们有一个 5x5 的方阵。现在我们创建一个函数来打印上三角矩阵。在这个函数中,我们首先检查给定矩阵是否为方阵。由于矩阵是方阵,因此我们通过遍历每一行和每一列来找到上三角矩阵。如果列的位置小于行的位置,则用零替换给定元素。否则,打印元素。

结论

这就是我们显示上三角矩阵的方法。或者说,通过检查行和列的位置(即行>列),我们将给定的方阵转换为上三角矩阵。



相关文章



关于我们 | 隐私条款 | 学习路线
返回顶部