Go語言程式計算矩陣元素之和
什麼是矩陣?
矩陣是由按行和列排列的數字集合組成的二維陣列。我們將使用三個例子來查詢元素的總和,並使用Golang程式比較矩陣的每個元素。
演算法
步驟1 − 匯入fmt包。
步驟2 − 現在我們需要啟動main()函式。
步驟3 − 然後我們建立一個名為matrixA的矩陣。
步驟4 − 使用fmt.Println()函式在螢幕上列印矩陣。
步驟5 − 初始化一個名為sum的新變數,型別為int,用於儲存結果總和。
步驟6 − 要查詢元素的總和,請使用for迴圈迭代矩陣。
步驟7 − 使用第一個for迴圈獲取矩陣的行,而第二個for迴圈則獲取矩陣的列。
步驟8 − 迴圈遍歷矩陣元素後,透過向其中新增值來更新sum變數。
步驟9 − 在螢幕上列印矩陣的總和。
示例1
我們將使用for迴圈迭代矩陣,找到其元素的總和並在螢幕上打印出來。
package main
import "fmt"
func main() {
matrix := [3][3]int{
{0, 1, 2},
{4, 5, 6},
{8, 9, 10},
}
fmt.Println("The given matrix is:")
for i := 0; i < 3; i++ {
for j := 0; j < 3; j++ {
fmt.Print(matrix[i][j], "\t")
}
fmt.Println()
}
fmt.Println()
var sum int = 0
for i := 0; i < len(matrix); i++ {
for j := 0; j < len(matrix[i]); j++ {
sum += matrix[i][j]
}
}
fmt.Println("Sum of matrix elements:", sum)
}
輸出
The given matrix is: 0 1 2 4 5 6 8 9 10 Sum of matrix elements: 45
示例2
在這個例子中,我們將使用Go程式設計中的range函式來查詢矩陣元素的總和。
package main
import "fmt"
func main() {
matrix := [3][3]int{
{20, 1, 2},
{4, 5, 6},
{8, 9, 10},
}
fmt.Println("The given matrix is:")
for i := 0; i < 3; i++ {
for j := 0; j < 3; j++ {
fmt.Print(matrix[i][j], "\t")
}
fmt.Println()
}
fmt.Println()
var sum int = 0
for _, row := range matrix {
for _, element := range row {
sum += element
}
}
fmt.Println("Sum of matrix elements:", sum)
}
輸出
The given matrix is: 20 1 2 4 5 6 8 9 10 Sum of matrix elements: 65
示例3
在這個例子中,我們將使用遞迴方法來使用go程式設計查詢矩陣元素的總和。
package main
import "fmt"
// creating a funciton to find sum through recursion
func sumMatrix(matrix [3][3]int, row int, col int) int {
if row == len(matrix) {
return 0
}
if col == len(matrix[row]) {
return sumMatrix(matrix, row+1, 0)
}
return matrix[row][col] + sumMatrix(matrix, row, col+1)
}
func main() {
matrix := [3][3]int{
{20, 1, 2},
{4, 50, 6},
{8, 9, 10},
}
fmt.Println("The given matrix is:")
for i := 0; i < 3; i++ {
for j := 0; j < 3; j++ {
fmt.Print(matrix[i][j], "\t")
}
fmt.Println()
}
fmt.Println()
result := sumMatrix(matrix, 0, 0)
fmt.Println("Sum of matrix elements:", result)
}
輸出
The given matrix is: 20 1 2 4 50 6 8 9 10 Sum of matrix elements: 110
結論
我們已經成功地編譯並執行了一個Go語言程式來對矩陣進行求和,並附帶了示例。在前兩種方法中,我們分別使用了for迴圈和range函式來迭代矩陣,而在最後一個例子中,我們使用了遞迴方法來計算總和。請注意,第三種方法在功能上更高效,執行時間更短。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP