gpt4 book ai didi

用于识别回文数的 Java 项目返回 false 并匹配输出

转载 作者:行者123 更新时间:2023-12-01 17:56:45 24 4
gpt4 key购买 nike

我已经学习编程三周了,这是我第一次接触堆栈溢出。我在类(class)项目中遇到了问题。我的目的是获取一个数字,如果它是回文则返回 true。看起来,如果我输入一个偶数位数的数字,我的 while 循环会正确识别该数字是否为回文。如果我插入的数字有奇数位,则循环会输出一个与输入匹配的数字,但向该方法返回 false。我已经移动了一些东西,并尝试改变 while 循环的要求,结果各不相同,但无法解决这个问题。我可以访问其他学生完成的代码来更改我的代码并完成项目,但我想了解我不理解的内容。

公共(public)类主要{

public static void main ( String [] args ) {
System.out.println ( isPalindrome ( 111 ) ) ;
}

public static boolean isPalindrome ( int number ) {

int lastDigit = 0 ;
int reverseNumber = 0 ;

while ( number != 0 ) {
lastDigit = ( number % 10 ) ;
reverseNumber = reverseNumber * 10 + lastDigit ;
number /= 10 ;
System.out.println ( reverseNumber ) ;
if ( reverseNumber == number ) {
return true ;
}
}
return false ;
}

}

我正在打印我的变量“reverseNumber”以查看我的输出是否与我的输入匹配。我也对数组或任何数学一无所知,所以我正在寻找非常简单的帮助。感谢您帮助我解决我公认的可悲的问题。

最佳答案

public static void main ( String [] args ) {
System.out.println ( isPalindrome ( 111 ) ) ;
}

public static boolean isPalindrome ( int number ) {

int lastDigit = 0 ;
int reverseNumber = 0 ;
int num = number;

while ( num != 0 ) {
lastDigit = ( num % 10 ) ;
reverseNumber = reverseNumber * 10 + lastDigit ;
num /= 10 ;
System.out.println ( reverseNumber ) ;
if ( reverseNumber == number ) {
return true ;
}
}
return false ;
}

你每次都会改变你的数字,最后将它与反向值进行比较,即111==0,只需将你的原始值存储在一些临时变量中,比如num。

关于用于识别回文数的 Java 项目返回 false 并匹配输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60699682/

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