Header Ads Widget

Ticker

6/recent/ticker-posts

Programa Java para verificar si un número es Palindrome o no

En este programa, aprenderá a verificar si un número es palíndromo o no en Java. Esto se hace usando for y while loop.

Ejemplo 1: Programa para verificar Palindrome usando el ciclo while

  1. public class Palindrome {
  2. public static void main(String[] args) {
  3. int num = 121, reversedInteger = 0, remainder, originalInteger;
  4. originalInteger = num;
  5. // reversed integer is stored in variable
  6. while( num != 0 )
  7. {
  8. remainder = num % 10;
  9. reversedInteger = reversedInteger * 10 + remainder;
  10. num /= 10;
  11. }
  12. // palindrome if orignalInteger and reversedInteger are equal
  13. if (originalInteger == reversedInteger)
  14. System.out.println(originalInteger + " is a palindrome.");
  15. else
  16. System.out.println(originalInteger + " is not a palindrome.");
  17. }
  18. }
Cuando ejecutas el programa, la salida será:
121 es un número palíndromo.
En este programa
  • Primero, el valor del número ( num ) dado se almacena en otra variable entera,originalIntegerEsto se debe a que necesitamos comparar los valores del número invertido y el número original al final.
  • Luego, se usa un ciclo while para recorrer num hasta que sea igual a 0.
    • En cada iteración, el último dígito de num se almacena en el resto .
    • Luego, el resto se agrega al entero invertido de tal manera que se agrega al siguiente valor posicional (multiplicación por 10).
    • Luego, el último dígito se elimina de num después de la división por 10.
  • Por último, se comparan reversedInteger y originalInteger . Si es igual, es un número palíndromo. Si no, no lo es.
Estos son los pasos de ejecución que tienen lugar:
Pasos de ejecución de palíndromo
numnum! = 0recordatorioentero invertido
121cierto10 * 10 + 1 = 1
12cierto21 * 10 + 2 = 12
1cierto112 * 10 + 1 = 121
0 0falso-121

Ejemplo 2: Programa para verificar Palindrome usando el bucle for

  1. public class Palindrome {
  2. public static void main(String[] args) {
  3. int num = 11221, reversedInteger = 0, remainder, originalInteger;
  4. originalInteger = num;
  5. // reversed integer is stored in variable
  6. for( ;num != 0; num /= 10 )
  7. {
  8. remainder = num % 10;
  9. reversedInteger = reversedInteger * 10 + remainder;
  10. }
  11. // palindrome if orignalInteger and reversedInteger are equal
  12. if (originalInteger == reversedInteger)
  13. System.out.println(originalInteger + " is a palindrome.");
  14. else
  15. System.out.println(originalInteger + " is not a palindrome.");
  16. }
  17. }
Cuando ejecutas el programa, la salida será:
11221 no es un palíndromo.
En el programa anterior, se usa el bucle for en lugar de un bucle while.
En cada iteración, num /= 10se ejecuta y num !=0se verifica la condición .

Publicar un comentario

0 Comentarios