Maison >Java >javaDidacticiel >Palindrome en Java

Palindrome en Java

王林
王林original
2024-08-30 16:26:05654parcourir

Une chaîne ou un nombre est dit palindrome s'il reste le même même après avoir été inversé. Par exemple, « MADAM » est une chaîne palindrome puisqu’elle s’écrit « MADAM » même si elle est inversée. Mais dans le cas de « LUCKY », cette chaîne n’est pas un palindrome puisqu’elle est « YKCUL » lorsqu’elle est inversée. Certains des numéros de palindrome sont 365563, 48984, 12321, 171, 88, 90009, 343, et certaines chaînes de palindrome sont MADAM, MALAYALAM, LOL, DAD, MOM, C++&++C, etc. Voyons la logique et la mise en œuvre du palindrome dans les sections suivantes. Dans cette rubrique, nous allons découvrir Palindrome en Java.

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

Logique derrière le palindrome en Java

Afin de vérifier si un nombre est un palindrome, l'algorithme suivant peut être utilisé.

  • Prenez une chaîne ou un nombre d'entrée qui doit être vérifié s'il s'agit d'un palindrome ou non.

Par exemple, prenons le nombre 353 comme entrée.

  • Prenez le numéro d'entrée et copiez-le dans une variable temporaire

353-> temp

  • Inversez-le en utilisant for, while ou n'importe quelle méthode de votre choix.

Reversednumber: rev=353

  • Comparez le numéro saisi et le numéro inversé.

S'ils sont identiques, alors le nombre est dit être un nombre palindrome.

Sinon, le nombre n'est pas un nombre palindrome.

c'est-à-dire

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

Comment tester le palindrome en utilisant diverses méthodes ?

Il existe plusieurs méthodes pour vérifier si le numéro d'entrée donné est un palindrome ou non.

  • Pour la boucle
  • Boucle While
  • Méthode Bibliothèque (pour les chaînes)

Examinons chacun d'eux en détail :

1. Programme pour vérifier le numéro de palindrome en utilisant la boucle for

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

Sortie 1 :

Palindrome en Java

Ici, comme 353 est le même lorsqu'il est inversé, il est considéré comme un palindrome.

Sortie 2 :

Palindrome en Java

Ici, comme 234 ne reste pas le même lorsqu'il est inversé, il n'est pas considéré comme un palindrome.

2. Programme pour vérifier le numéro de palindrome à l'aide de la boucle While

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

Sortie 1 :

Palindrome en Java

Sortie 2 :

Palindrome en Java

3. Programme pour vérifier le numéro de palindrome en utilisant la méthode de bibliothèque (pour les chaînes)

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

Sortie :

Palindrome en Java

Ici, la chaîne d'entrée est transmise dans le programme lui-même.

Pour vérifier si une chaîne est un palindrome, le programme suivant est également utilisé.

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

Sortie :

Palindrome en Java

Conclusion

Un nombre est dit palindrome s'il reste le même même lorsqu'il est inversé. Un palindrome peut également être vérifié dans des chaînes. Certains nombres et chaînes du palindrome sont MOM, MALAYALAM, DAD, LOL, 232, 1331, etc. Dans ce document, plusieurs aspects du palindrome sont abordés, tels que l'algorithme, les méthodes, la mise en œuvre, etc.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Numéro inversé en JavaArticle suivant:Numéro inversé en Java