Java回文数程序(使用while和for循环)
什么是回文数?
回文数是指一个数字,当它被反转时,仍然是相同的数字。例如,131。当它的数字被反转时,它仍然是相同的数字。回文数在垂直轴上具有反射对称性。它指的是当字母被反转时,拼写相同的词。
Java中的回文数示例
121, 393, 34043, 111, 555, 48084
回文数示例
LOL, MADAM
回文数算法
以下是Java中的回文数算法逻辑
- 获取需要检查是否为回文数的输入数字。
- 将数字复制到一个临时变量中并反转它。
- 比较反转后的数字和原始数字。
- 如果它们相同,则该数字是“回文数”。
- 否则,该数字不是“回文数”。
如何检查输入的数字是否为回文数
以下是使用WHILE循环的Java回文程序。
package com.guru99;
public class PalindromeNum {
public static void main(String[] args)
{
int lastDigit,sum=0,a;
int inputNumber=171; //It is the number to be checked for palindrome
a=inputNumber;
// Code to reverse a number
while(a>0)
{ System.out.println("Input Number "+a);
lastDigit=a%10; //getting remainder
System.out.println("Last Digit "+lastDigit);
System.out.println("Digit "+lastDigit+ " was added to sum "+(sum*10));
sum=(sum*10)+lastDigit;
a=a/10;
}
// if given number equal to sum than number is palindrome otherwise not palindrome
if(sum==inputNumber)
System.out.println("Number is palindrome ");
else
System.out.println("Number is not palindrome");
}
}
代码输出
Input Number 171 Last Digit 1 Digit 1 was added to sum 0 Input Number 17 Last Digit 7 Digit 7 was added to sum 10 Input Number 1 Last Digit 1 Digit 1 was added to sum 170 Number is palindrome
使用for循环检查回文数的程序
以下是使用for循环的Java回文程序
package com.guru99;
public class PalindromeNum {
public static void main(String[] args)
{
int lastDigit,sum=0,a;
int inputNumber=185; //It is the number to be checked for palindrome
a=inputNumber;
// Code to reverse a number
for( ;a != 0; a /= 10 )
{ System.out.println("Input Number "+a);
lastDigit=a%10; //getting remainder
System.out.println("Last Digit "+lastDigit);
System.out.println("Digit "+lastDigit+ " was added to sum "+(sum*10));
sum=(sum*10)+lastDigit;
a=a/10;
}
// if given number equal to sum than number is palindrome otherwise not palindrome
if(sum==inputNumber)
System.out.println("Number is palindrome ");
else
System.out.println("Number is not palindrome");
}
}
代码输出
Input Number 185 Last Digit 5 Digit 5 was added to sum 0 Input Number 1 Last Digit 1 Digit 1 was added to sum 50 Number is not palindrome
