交换矩阵对角线的Swift程序

交换矩阵对角线的Swift程序

在这篇文章中,我们将学习如何编写一个Swift程序来交换对角线。因此,为了交换对角线,我们需要将主对角线的元素与给定矩阵的次对角线的元素交换。比如说

Original matrix:
2 4 5 6 
3 4 6 2
6 7 7 2
1 1 1 1
So after swapping diagonals we get:
6 4 5 2
3 6 4 2
6 7 7 2
1 1 1 1

算法

  • 第1步 – 创建一个函数。

  • 第2步–运行一个for循环来迭代每个元素。

  • 第3步 – 调换主对角线和次对角线的元素。

let temp = mxt[x][x]
mxt[x][x] = mxt[x][size-x-1]
mxt[x][size-x-1] = temp
  • 第4步 – 创建一个矩阵。

  • 第5步 – 调用函数并将矩阵传入其中

  • 第6步 – 打印输出。

示例

按照斯威夫特的程序来互换对角线。

import Foundation
import Glibc

// Size of the array 
var size = 3

// Function to interchange the diagonals of the matrix
func diagonalInterchange(M:[[Int]]){
   var mxt : [[Int]] = M

   // Interchanging diagonals by
   // swapping the elements
   for x in 0..<size{
      if (x != size/2){
         let temp = mxt[x][x]
         mxt[x][x] = mxt[x][size-x-1]
         mxt[x][size-x-1] = temp
      }
   }

   // Displaying matrix
   print("Matrix after diagonals interchange:")
   for m in 0..<size{
      for n in 0..<size{
         print(mxt[m][n], terminator: " ")
      }
      print("\n")
   }
}

// Creating 3x3 matrix of integer type
var matrix : [[Int]] = [[2, 3, 4], 
   [5, 6, 7], 
   [8, 3, 2]]

print("Original Matrix:")
for x in 0..<size{
   for y in 0..<size{
      print(matrix[x][y], terminator:" ")
   }
   print("\n")
}

// Calling the function 
diagonalInterchange(M:matrix)

输出

Original Matrix:
2 3 4 

5 6 7 

8 3 2 

Matrix after diagonals interchange:
4 3 2 

5 6 7 

2 3 8 

在上面的代码中,我们有一个3×3的方形矩阵。现在我们创建一个函数,在其中运行一个从0到1的for循环,对于每个迭代,我们使用临时变量将primary(mxt[x][x])secondary(mxt[x][size-x-1])对角线上的元素相互交换,然后显示修改后的矩阵。

结论

因此,这就是我们如何互换给定矩阵的对角线。这种方法适用于任何类型的矩阵,如方形、对称、水平等。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程