Introducere în Palindrome în Java

Se spune că o șir sau un număr este un palindrom dacă rămâne aceeași chiar și după ce este inversată. De exemplu, „MADAM” este un șir palindrom, deoarece este scris „MADAM” chiar dacă este inversat. Dar în cazul „LUCKY”, acest șir nu este palindrom, ci este „YKCUL” atunci când este inversat. Unele dintre numerele palindromului sunt 365563, 48984, 12321, 171, 88, 90009, 343, iar unele dintre șirurile palindromului sunt MADAM, MALAYALAM, LOL, DAD, MOM, C ++ & ++ C, etc. Să vedem logica și implementarea palindromului în secțiunile următoare. În acest subiect, vom afla despre Palindrome în Java.

Logica din spatele Palindrome în Java

Pentru a verifica dacă un număr este un palindrom, se poate utiliza următorul algoritm.

  • Luați un șir de intrare sau un număr care trebuie verificat dacă este un palindrom sau nu.

De exemplu, să luăm numărul de intrare 353 ca intrare.

  • Luați numărul de intrare și copiați-l într-o variabilă temp

353-> temp

  • Inversați-l folosind pentru, în timp ce sau orice altă metodă la alegere.

Reversednumber: rev=353

  • Comparați numărul de intrare și numărul inversat.

Dacă sunt aceleași, atunci se spune că numărul este un număr palindrom.

Altfel, numărul nu este un număr palindrom.

și anume

If(inputnum==rev)
( then palindrome )
Else not palindrome

Cum se testează Palindrome folosind diverse metode?

Există mai multe metode pentru a verifica dacă numărul de intrare dat este un palindrom sau nu.

  1. Pentru Buclă
  2. În timp ce Buclă
  3. Metoda bibliotecii (pentru șiruri)

Haideți să analizăm în detaliu fiecare dintre ele.

1. Program pentru a verifica numărul palindrom folosind buclă

//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");
)
)
)

Ieșire de eșantion 1:

Aici, întrucât 353 este același atunci când este inversat, este considerat un palindrom.

Ieșire de probă 2:

Aici, întrucât 234 rămâne nu același atunci când este inversat, nu este considerat un palindrom.

2. Programul pentru a verifica numărul palindromului utilizând bucla while

//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");
)
)
)

Ieșire de eșantion 1:

Rezultat 2:

3. Program pentru a verifica numărul palindromului folosind metoda Bibliotecă (pentru șiruri)

//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");
)
)

Ieșire de eșantion:

Aici, șirul de intrare este trecut în programul însuși.

Pentru a verifica dacă o șir este un palindrom, este utilizat și următorul program.

//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");
)
)
)

Ieșire de eșantion:

Concluzie

Se spune că un număr este palindrom dacă rămâne același chiar și atunci când este inversat. Un palindrom poate fi verificat și în șiruri. Unele dintre numerele și șirurile palindromului sunt MOM, MALAYALAM, DAD, LOL, 232, 1331, etc. În acest document, sunt abordate mai multe aspecte ale Palindrome, cum ar fi algoritmul, metodele, implementarea etc.

Articole recomandate

Acesta este un ghid pentru Palindrome în Java. Aici vom discuta Cum să testăm Palindrome folosind diverse metode cu ieșirea de eșantion. De asemenea, puteți arunca o privire la următoarele articole pentru a afla mai multe -

  1. Rădăcina pătrată în Java
  2. Numărul invers în Java
  3. StringBuffer în Java
  4. CardLayout în Java
  5. Prezentare generală a Palindrome în C #
  6. Inversează JavaScript
  7. Instrumente de implementare Java
  8. Palindrom în C ++
  9. Rădăcina pătrată în PHP
  10. Funcționare și Top 3 Metode Enum în C #