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 - 列印輸出。

示例

以下是用Swift編寫的交換對角線元素的程式。

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 

在上面的程式碼中,我們有一個3x3的方陣。現在我們建立一個函式,在這個函式中,我們執行一個從0到size-1的for迴圈,每次迭代我們使用臨時變數交換主對角線(mxt[x][x])和副對角線(mxt[x][size-x-1])的元素,並顯示修改後的矩陣。

結論

因此,這就是我們如何交換給定矩陣的對角線元素的方法。此方法適用於任何型別的矩陣,例如方陣、對稱矩陣、水平矩陣等。

更新於:2022-12-29

瀏覽量:164

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告
© . All rights reserved.