Introduktion til Palindrome i Java

Det siges, at en streng eller et tal er en palindrome, hvis den forbliver den samme, selv efter at den er vendt. For eksempel er 'MADAM' en palindrome streng, da den staves 'MADAM', selvom den vendes. Men i tilfælde af 'LUCKY' er denne streng ikke palindrome, da den er 'YKCUL', når den vendes. Nogle af palindrome numrene er 365563, 48984, 12321, 171, 88, 90009, 343, og nogle af palindrome strengene er MADAM, MALAYALAM, LOL, DAD, MOM, C ++ & ++ C osv . Lad os se logikken og implementeringen af ​​palindrome i de følgende afsnit. I dette emne skal vi lære om Palindrome i Java.

Logikken bag Palindrome i Java

For at kontrollere, om et tal er en palindrome, kan følgende algoritme bruges.

  • Tag en inputstreng eller -nummer, der skal kontrolleres, om det er en palindrome eller ej.

Lad os for eksempel tage nummeret 353 som input.

  • Tag input-nummeret, og kopier det til en temp-variabel

353-> temp

  • Vend det tilbage ved hjælp af til, mens eller hvilken som helst metode, du vælger.

Reversednumber: rev=353

  • Sammenlign inputnummeret og det omvendte nummer.

Hvis de er de samme, siges antallet at være et palindrome tal.

Ellers er antallet ikke et palindrome nummer.

dvs.

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

Sådan testes Palindrome ved hjælp af forskellige metoder?

Der er flere metoder til at kontrollere, om det givne inputnummer er en palindrome eller ej.

  1. For Loop
  2. Mens Loop
  3. Biblioteksmetode (til strenge)

Lad os se nærmere på hver enkelt af dem.

1. Program for at kontrollere palindrome nummer ved hjælp af loop

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

Prøveudgang 1:

Her, da 353 er det samme, når det vendes, betragtes det som en palindrome.

Prøveudgang 2:

Som 234 forbliver her ikke det samme, når det vendes, betragtes det ikke som en palindrome.

2. Program for at kontrollere palindrome nummer ved hjælp af While loop

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

Prøveudgang 1:

Prøveudgang 2:

3. Program for at kontrollere palindrome-nummer ved hjælp af Library Method (til strenge)

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

Prøveudgang:

Her sendes inputstrengen i selve programmet.

For at kontrollere, om en streng er en palindrome, bruges følgende program også.

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

Prøveudgang:

Konklusion

Et tal siges at være palindrome, hvis det forbliver det samme, selv når det vendes. En palindrome kan også kontrolleres i strenge. Nogle af palindrome-numrene og -strengene er MOM, MALAYALAM, DAD, LOL, 232, 1331 osv. I dette dokument er flere aspekter af Palindrome dækket, såsom algoritme, metoder, implementering osv.

Anbefalede artikler

Dette er en guide til Palindrome i Java. Her drøfter vi Sådan testes Palindrome ved hjælp af forskellige metoder med prøveudgangen. Du kan også se på de følgende artikler for at lære mere -

  1. Firkantet rod i Java
  2. Omvendt nummer i Java
  3. StringBuffer i Java
  4. CardLayout i Java
  5. Oversigt over Palindrome i C #
  6. Omvendt i JavaScript
  7. Java-implementeringsværktøjer
  8. Palindrome i C ++
  9. Firkantet rod i PHP
  10. Arbejde og top 3 enummetoder i C #

Kategori: