首頁 >Java >java教程 >Java程式以反轉一個數字並檢查它是否為回文數

Java程式以反轉一個數字並檢查它是否為回文數

WBOY
WBOY轉載
2023-08-26 15:09:131445瀏覽

Java程式以反轉一個數字並檢查它是否為回文數

什麼是回文數?

如果給定一個數字(兩位、三位或四位數字),將每個數字的位置從前到後反轉,然後反過來,然後將所有元素反轉後輸出的數字是否相同那麼它就是一個回文數。

  • 字串 - 字串是一種儲存膠囊或儲存方法,我們可以在 Java 程式中儲存字元序列。

  • 數組 - 數組是類似類型的資料以順序形式放置在不同位置的集合,這樣可以透過簡單地添加來更輕鬆地計算資料在程式中的位置與調查中的基礎數據。

讓我們透過一個例子來理解這一點 -

Given Input: a = 102022220201
Output : Reverse of a = 102022220201
//The Number Is Palindrome = YES//
Given Input: b =20011997
Output : Reverse of b = 79911002
//The Number Is Palimdrome = NO//

演算法 - 反轉數字及其回文

這是反轉數字並找出它是否回文的通用演算法 -

  • 第 1 步 - 檢查回文數。

  • 第 2 步 - 該數字應保存在非永久變數中。

  • 第 3 步 - 更改數字。

  • 第 4 步 - 現在檢查臨時變數中的數字與反轉後的數字。

  • 第 5 步- 如果兩個數字保持相同或相同,則「這是一個回文數」。

  • 第 6 步 - 要/否則「這不是」。

語法:第 1 部分 - 反轉數字

{
   int a,res=0,m;
   Scanner sc=new Scanner(System.in);
   System.out.println("Enter a number which you want to be reversed");
}
m=sc.nextInt();
for( ;m!=0; ) {
   a=m%10;
   res=(res*10)+a;
   m=m/10;
}

語法:第 2 部分 - 尋找數字的回文

if (originalNum1 == reversedNum1) {
   System.out.println(originalNum1 + " is a Palindrome number.");
}
else {
   System.out.println(originalNum1 + " is not a Palindrome number.");
}

讓我們看看Java中的回文程式。這將是最簡單的回文程序形式。

以下方法對於檢查回文數非常有用 -

  • 透過使用字串和陣列檢查數字是否是回文。

  • 透過在Java中使用字串找出回文數。

  • 透過檢查陣列是否為回文。

透過使用字串和陣列檢查數字回文數

檢查數字是否回文的步驟 -

  • 未設定標誌的初始化或標誌值為 0。

  • 將陣列大小設為 n/2。

  • 檢查循環的條件。然後將標誌值設為1。

  • 中斷。

  • 循環結束並得到結果。

範例

import java.util.*;
public class palindromeTest{
   public static void main(String args[]){
      int n;
      System.out.println("Enter a number to test");
      Scanner sc = new Scanner (System.in);
      n=sc.nextInt();
      int r=0 ,q=0 ,num=0 ,p=0;
      num= n;
      while(n!=0){
         r = r%10;
         q = n/10;
         p = p*10+r ;
         n = q;
      }
      if (num==p){
         System.out.println("the number is a palindrome number");
      }
      else{
         System.out.print("the number is not palindrome");
      }
   }
}

輸出

Enter a number to test
1111
the number is not palindrome

透過使用字串找出 Java 中的回文數 -

A palindrome number if get reversed, it will return the same number as the input provided. Using the StringBuffer method with the one way reverse(), we can check the palindrome number by using Java. In below execkple can check the palindrome number by using Java. In below exple the input string is palindrome or not.

範例

public class Main {
   public static void main(String[] args) {

      String str = "Radar2022", reverseStr2 = "";
      int strLength1 = str.length();
      for (int i = (strLength1 - 1); i >=0; --i) {
      reverseStr2 = reverseStr2 + str.charAt(i);
      }
      if (str.toLowerCase().equals(reverseStr2.toLowerCase())) {
         System.out.println(str + "  -is a Palindrome String.");
      }
      else {
         System.out.println(str + " -is not a Palindrome String.");
      }
   }
}

輸出

Radar2022 -is not a Palindrome String.

透過檢查陣列是否回文

有兩個過程來檢查陣列是否為回文。

  • 如果字串中只有一個字符,則傳回 true。

  • 否則,只需比較第一個和最後一個字元並將它們放入遞歸方法中即可。

範例

public class findapalindrome {

   static void palindrome(int arr[], int n){
      int flag7 = 0;
      for (int i = 0; i <= n / 2 && n != 0; i++) {
         if (arr[i] != arr[n - i - 1]) {
            flag7 = 1;
            break;
         }
      }
      if (flag7 == 1)
      System.out.println("The String Is Not Palindrome");
      else
      System.out.println("The String Is Palindrome");
   }
   public static void main(String[] args){
      int arr[] = { 100, 200, 300, 222, 1111 };
      int n = arr.length;
      palindrome(arr, n);
   }
}

輸出

The String Is Not Palindrome

結論

經過定義和一些基於理論的程序後,可以輕鬆地說回文數是一種即使在更改原始數字後也保持不變的數字。

所有這些解釋都透過範例進行了正確描述,為了更好地理解,我們還提供了基於三種不同方法的範例程式。

以上是Java程式以反轉一個數字並檢查它是否為回文數的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除