Eine Zeichenfolge oder eine Zahl wird als Palindrom bezeichnet, wenn sie auch nach der Umkehrung gleich bleibt. Beispielsweise ist „MADAM“ eine Palindrom-Zeichenfolge, da sie auch in umgekehrter Reihenfolge als „MADAM“ geschrieben wird. Aber im Fall von „LUCKY“ ist diese Zeichenfolge kein Palindrom, da sie umgekehrt „YKCUL“ ist. Einige der Palindromnummern sind 365563, 48984, 12321, 171, 88, 90009, 343 und einige der Palindromzeichenfolgen sind MADAM, MALAYALAM, LOL, DAD, MOM, C++&++C usw. Sehen wir uns in den folgenden Abschnitten die Logik und Implementierung des Palindroms an. In diesem Thema lernen wir das Palindrom in Java kennen.
Starten Sie Ihren kostenlosen Softwareentwicklungskurs
Webentwicklung, Programmiersprachen, Softwaretests und andere
Um zu überprüfen, ob eine Zahl ein Palindrom ist, kann der folgende Algorithmus verwendet werden.
Nehmen wir zum Beispiel die Zahl 353 als Eingabe.
353-> temp
Reversednumber: rev=353
Wenn sie gleich sind, spricht man von einer Palindromzahl.
Andernfalls handelt es sich bei der Zahl nicht um eine Palindromzahl.
d.h.
If(inputnum==rev) { then palindrome } Else not palindrome
Es gibt mehrere Methoden, um zu überprüfen, ob die angegebene Eingabenummer ein Palindrom ist oder nicht.
Lassen Sie uns jeden einzelnen davon im Detail betrachten:
Code:
//Java program to check whether a String is a Palindrome or not using For Loop import java.util.*; public class PalindromeNumberExample { //main method public static void main(String[] args) { int r=0 ; //reversed Integer int rem, num; //remainder and original number Scanner s = new Scanner(System.in); System.out.print("Enter number that has to be checked:"); num = s.nextInt(); //Store the number in a temporary variable int temp = num; //loop to find the reverse of a number for( ;num != 0; num /= 10 ) { rem = num % 10; // find the modulus of the number when divided by 10 r = r * 10 + rem; } //check whether the original and reversed numbers are equal if (temp == r) { System.out.println(temp + " is input number"); System.out.println(r + " is the reversed number"); System.out.println("Since they are equal " + temp + " is a palindrome number"); } else { System.out.println(temp + " is input number"); System.out.println(r + " is the reversed number"); System.out.println("Since they are not equal " + temp + " is not a palindrome number"); } } }
Ausgabe 1:
Da 353 umgekehrt dasselbe ist, wird es als Palindrom betrachtet.
Ausgabe 2:
Da 234 bei Umkehrung nicht gleich bleibt, wird es hier nicht als Palindrom betrachtet.
Code:
//Java program to check whether a number is a Palindrome or not using While Loop import java.util.*; public class PalindromeNumberExample { public static void main(String[] args) { int r=0, rem, num; Scanner s = new Scanner(System.in); System.out.print("Enter number that has to be checked:"); num = s.nextInt(); //Store the number in a temporary variable int temp = num; //loop to find the reverse of a number while( num != 0 ) { rem= num % 10; r= r * 10 + rem; num=num/10; } //check whether the original and reversed numbers are equal if (temp == r) { System.out.println(temp + " is input number"); System.out.println(r + " is the reversed number"); System.out.println("Since they are equal " + temp + " is a palindrome number"); } else { System.out.println(temp + " is input number"); System.out.println(r + " is the reversed number"); System.out.println("Since they are not equal " + temp + " is not a palindrome number"); } } }
Ausgabe 1:
Ausgabe 2:
Code:
//Java program to check whether a String is a Palindrome or not using Library method import java.util.*; public class PalindromeNumberExample { //Function to check whether the string is palindrome or not public static void PalindromeCheck(String str) { // reverse the input String String rev = new StringBuffer(str).reverse().toString(); // checks whether the string is palindrome or not if (str.equals(rev)) { System.out.println("input string is :" + str); System.out.println("Reversed string is :" + rev); System.out.println("Since the input and reversed string are equal, "+ str +" is a palindrome"); } else { System.out.println("input string is :" + str); System.out.println("Reversed string is :" + rev); System.out.println("Since the input and reversed string are not equal, "+ str +" is not a palindrome"); } } public static void main (String[] args) { PalindromeCheck("MALAYALAM"); } }
Ausgabe:
Hier wird die Eingabezeichenfolge im Programm selbst übergeben.
Um zu überprüfen, ob eine Zeichenfolge ein Palindrom ist, wird auch das folgende Programm verwendet.
Code:
//Java program to check whether a String is a Palindrome or not import java.util.*; public class PalindromeNumberExample { public static void main(String args[]) { String st, rev = ""; Scanner sc = new Scanner(System.in); System.out.println("Enter the string that has to be checked:"); st = sc.nextLine(); int len = st.length(); //length of the string for ( int i = len- 1; i >= 0; i-- ) rev = rev + st.charAt(i); if (st.equals(rev)) { System.out.println("input string is :" + st); System.out.println("Reversed string is :" + rev); System.out.println("Since the input and reversed string are equal, "+ st +" is a palindrome"); } else { System.out.println("input string is :" + st); System.out.println("Reversed string is :" + rev); System.out.println("Since the input and reversed string are not equal, "+ st +" is not a palindrome"); } } }
Ausgabe:
Eine Zahl wird als Palindrom bezeichnet, wenn sie auch dann gleich bleibt, wenn sie umgekehrt wird. Ein Palindrom kann auch in Strings überprüft werden. Einige der Zahlen und Zeichenfolgen des Palindroms sind MOM, MALAYALAM, DAD, LOL, 232, 1331 usw. In diesem Dokument werden verschiedene Aspekte des Palindroms behandelt, z. B. Algorithmus, Methoden, Implementierung usw.
Das obige ist der detaillierte Inhalt vonPalindrom in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!