示例:检查回文数的程序
fun main(args: Array<String>) {
var num = 121
var reversedInteger = 0
var remainder: Int
val originalInteger: Int
originalInteger = num
// reversed integer is stored in variable
while (num != 0) {
remainder = num % 10
reversedInteger = reversedInteger * 10 + remainder
num /= 10
}
// palindrome if orignalInteger and reversedInteger are equal
if (originalInteger == reversedInteger)
println("$originalInteger is a palindrome.")
else
println("$originalInteger is not a palindrome.")
}
运行程序后,输出将是
121 is a palindrome.
注意:您可以将num的值更改为11221,然后运行程序,输出将是
11221 is not a palindrome.
等效的Java代码如下:Java检查回文数程序
在这个程序中,
- 首先,给定的数字(num)的值存储在另一个整数变量originalInteger中。这是因为我们需要在最后比较反转后的数字和原始数字的值。
- 然后,使用while循环遍历num,直到它等于0。
- 在每次迭代中,num 的最后一位数字存储在 remainder 中。
- 然后,将remainder添加到reversedInteger中,使其添加到下一个位数(乘以10)。
- 然后,通过除以10从num中删除最后一个数字。
- 最后,比较reversedInteger和originalInteger。如果相等,则为回文数。如果不相等,则不是。
以下是执行步骤:
num | num != 0 | 余数 | reversedInteger |
---|---|---|---|
121 | true | 1 | 0 * 10 + 1 = 1 |
12 | true | 2 | 1 * 10 + 2 = 12 |
1 | true | 1 | 12 * 10 + 1 = 121 |
0 | false | - | 121 |