gpt4 book ai didi

java - 检查数字是否为回文背后的逻辑

转载 作者:太空宇宙 更新时间:2023-11-04 14:57:32 24 4
gpt4 key购买 nike

我编写了一个程序来检查一个数字是否是回文,但无法理解--当n=1并且我做n/10时,它不应该= 0,因为int n = 1/10 = 0.1=0所以循环应该停止吗?但它打印为 1 然后是 0 。这是怎么发生的?

import java.util.Scanner;


public class Pallinnumber
{
public static void main(String[] args)
{
int y =reversenum(1234);
System.out.println(y);
Pallinnumber.Pallinnum(12);
Scanner s = new Scanner(System.in);
System.out.println("Enter the number");
int x = s.nextInt();
int z= reversenum(x);
System.out.println(z);

}

public static int reversenum(int n)
{
int num=0;
while(n>0)
{
num = num*10;
num=num+n%10;
n=n/10;
System.out.println(n);

}
return num;
}
public static boolean Pallinnum(int n)
{
if(n==reversenum(n)){
System.out.println("It is a Pallindrome number");
return true;
}
else
{

System.out.println("It is not an Pallindrome number");
return false ;

}
}

}

最佳答案

代码中没有错误:当n1时,您执行n/= 10 之后n%10 添加到运行总数(即 num)。这使得 num 等于 1,这就是您想要的。

当循环打印零时,num 已经等于 1

关于java - 检查数字是否为回文背后的逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23018046/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com