Golang 检查两个矩阵是否相等
在本教程中,我们将编写一个 Golang 程序来检查两个矩阵是否相等。矩阵是按行和列排列的数字集合,是一种二维数组。
使用 if 语句检查两个矩阵是否相等
在此示例中,我们将使用 if 条件语句比较两个矩阵的相等性。
步骤
步骤 1 - 导入 fmt 包。
步骤 2 - 开始 main() 函数。
步骤 3 - 初始化并分配两个矩阵的值。
步骤 4 - 在屏幕上打印这些矩阵。
步骤 5 - 现在使用等号(==)
运算符来检查给定的矩阵是否相等。
步骤 6 - 根据结果将结果打印回屏幕。
示例
package main
import (
"fmt"
)
func main() {
var i, j int
matrixA := [3][3]int{
{0, 1, 2},
{4, 5, 6},
{8, 9, 10},
}
matrixB := [3][3]int{
{10, 11, 12},
{13, 14, 15},
{16, 17, 18},
}
fmt.Println("The first matrix is:")
for i = 0; i < 3; i++ {
for j = 0; j < 3; j++ {
fmt.Print(matrixA[i][j], "\t")
}
fmt.Println()
}
fmt.Println()
fmt.Println("The second matrix is:")
for i = 0; i < 3; i++ {
for j = 0; j < 3; j++ {
fmt.Print(matrixB[i][j], "\t")
}
fmt.Println()
}
fmt.Println()
if matrixA == matrixB {
fmt.Println("The First Matrix and the Second Matrix are Equal")
} else {
fmt.Println("The First Matrix is Not Equal to the Second Matrix")
}
}
输出
The first matrix is:
0 1 2
4 5 6
8 9 10
The second matrix is:
10 11 12
13 14 15
16 17 18
The First Matrix is Not Equal to the Second Matrix
使用For Loop检查两个矩阵是否相等
让我们看看另一种方法,用于检查两个矩阵是否相等。
步骤
步骤 1 - 导入fmt包。
步骤 2 - 开始main()函数。
步骤 3 - 初始化并赋值给两个矩阵。
步骤 4 - 在屏幕上打印这些矩阵。现在使用for循环来检查一个矩阵的每个元素是否等于另一个矩阵的元素。
步骤 5 - 初始化一个名为isequal的变量,并将其赋值为1。使用for循环来迭代矩阵。
步骤 6 - 如果两个矩阵的任何一个元素不同,则将isequal的值翻转为0并且跳出循环。
步骤 7 - 循环结束后,使用if条件将isequal变量的值与0进行比较,只有当元素不相同时,isequal的值才为0。
步骤 8 - 现在将结果打印在屏幕上。
示例
package main
import (
"fmt"
)
func main() {
var i, j int
matrixA := [3][3]int{
{0, 1, 2},
{4, 5, 6},
{8, 9, 10},
}
matrixB := [3][3]int{
{0, 1, 2},
{4, 5, 6},
{8, 9, 10},
}
fmt.Println("The first matrix is:")
for i = 0; i < 3; i++ {
for j = 0; j < 3; j++ {
fmt.Print(matrixA[i][j], "\t")
}
fmt.Println()
}
fmt.Println()
fmt.Println("The second matrix is:")
for i = 0; i < 3; i++ {
for j = 0; j < 3; j++ {
fmt.Print(matrixB[i][j], "\t")
}
fmt.Println()
}
fmt.Println()
isequal := 1
for i = 0; i < 3; i++ {
for j = 0; j < 3; j++ {
if matrixA[i][j] != matrixB[i][j] {
isequal = 0
break
}
}
}
if isequal == 1 {
fmt.Println("The First Matrix and the Second Matrix are Equal")
} else {
fmt.Println("The First Matrix is Not Equal to the Second Matrix")
}
}
输出
The first matrix is:
0 1 2
4 5 6
8 9 10
The second matrix is:
0 1 2
4 5 6
8 9 10
The First Matrix and the Second Matrix are Equal
结论
我们已经成功编译并执行了一段golang代码,用于检查两个矩阵是否相等。