while ループと for ループを使用した Java の回文数プログラム

回文数とは何ですか?

A 回文番号 反転しても同じ数字が残る数字です。 たとえば、131 です。桁を反転しても、同じ数値のままです。 回文数は縦軸で鏡映対称になります。 文字を逆にしても同じ綴りになる単語を指します。

Java の回文数の例

121, 393, 34043, 111, 555, 48084

回文数の例

 LOL, MADAM

回文数アルゴリズム

以下は Java の回文数値アルゴリズム ロジックです。

  • であるかどうかを確認する必要がある入力番号を取得します。 回文
  • 数値を一時変数にコピーし、それを元に戻します。
  • 反転した数値と元の数値を比較します。
  • 同じ場合の番号は「回文番号」
  • それ以外の場合、数字は「回文数字」ではありません

入力された数値が回文かどうかを確認する方法

以下は Java の Palindrome プログラムです。 WHILEループ

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 ループを使用した Palindrome 用の 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