Golang 检查回文数的程序


2022年3月13日, Learn eTutorial
1990

为了更好地理解这个示例,我们始终建议您学习下面列出的 Golang 编程 的基础主题

什么是回文数?

当一个数字的反转后仍然与原数字相同,则称其为回文数。

示例:12321, 75257

如何检查回文数

要检查给定数字是否为回文数,请将给定数字保存到一个临时变量中。反转给定数字,然后将反转后的数字与临时变量进行比较。如果两者相同,则打印“回文数”,否则打印“不是回文数”。

如何在 Go 程序中检查回文数

这里我们使用变量 num 来保存要检查的数字。另一个临时变量 temp 用于在原数字被反转后进行检查。使用 for 循环分离数字的最后一位。为此,我们将给定数字除以 10。这里我们使用算术运算符模数 % 来执行操作。此值存储到另一个变量 rem 中。 rem = temp % 10。将此结果添加到变量 rev 中,其中将存储给定数字的反转形式。在添加到 rev 之前,我们需要将 rev 中的当前数据乘以 10,然后将 rem 添加到其中。 rem = temp % 10, rev = rev*10 + rem。这将在 for 循环中执行。

for 循环 的语法

 


for    initializer; condition;   incrementor {
}


If else 语句用于检查给定数字是否等于反转后的数字。如果 num = rev,则使用函数 fmt.println() 打印消息“回文数”。否则打印“不是回文数”

 

if...else 语法

 


if condition {
//do some instructions
}else {
//do some instructions

算法

第一步:导入 fmt

第二步:启动 main() 函数

步骤 3:声明变量 Num, rem, rev, temp

步骤 4:使用 fmt.Scanfln() 读取数字 Num

步骤 5:初始化整数 rev=0

步骤 6:使用 for 循环反转给定数字,如 (for temp := Num; temp > 0; temp = temp / 10)

步骤 7:在循环中找到 rem = temp % 10rev = rev*10 + rem

步骤 8:使用 If else 语句 (if Num == rev) 检查反转后的数字是否等于给定数字

步骤 9:如果为真,则是回文数,否则不是回文数。

 

Golang 源代码

                                          package main
import "fmt"

func main() {
    var Num, rem int
    fmt.Print("Enter the number to check Palindrome = ")
    fmt.Scanln(&Num;)
    rev := 0
    for temp := Num; temp > 0; temp = temp / 10 {
        rem = temp % 10
        rev = rev*10 + rem
    }

    fmt.Println("The Reverse of the number = ", rev)
    if Num == rev {
        fmt.Println(Num, " is a Palindrome number")
    } else {
        fmt.Println(Num, " is Not a Palindrome number")
    }
}
                                      

输出

Enter the number to check Palindrome = 191
The Reverse of the number =  191
191  is a Palindrome number