Header Ads Widget

Ticker

6/recent/ticker-posts

Programa Java para revertir un número

En este programa, aprenderá a revertir un número usando un ciclo while y un ciclo for en Java.
  1. public class ReverseNumber {
  2. public static void main(String[] args) {
  3. int num = 1234, reversed = 0;
  4. while(num != 0) {
  5. int digit = num % 10;
  6. reversed = reversed * 10 + digit;
  7. num /= 10;
  8. }
  9. System.out.println("Reversed Number: " + reversed);
  10. }
  11. }
Cuando ejecutas el programa, la salida será:
Número invertido: 4321
En este programa, el bucle while se usa para invertir un número como se indica en los siguientes pasos:
  • Primero, el resto de num dividido por 10 se almacena en el dígito variable Ahora, el dígito contiene el último dígito de num , es decir, se agrega 4.
    dígito a la variable invertida después de multiplicarla por 10. La multiplicación por 10 agrega un nuevo lugar en el número invertido. El undécimo lugar multiplicado por 10 le da el décimo lugar, el décimo le da la centésima y así sucesivamente. En este caso, invertido contiene 0 * 10 + 4 = 4.
    num se divide por 10 para que ahora solo contenga los primeros tres dígitos: 123.
  • Después de la segunda iteración, el dígito es igual a 3, el inverso es igual a 4 * 10 + 3 = 43 y num = 12
  • Después de la tercera iteración, el dígito es igual a 2, el inverso es igual a 43 * 10 + 2 = 432 y num = 1
  • Después de la cuarta iteración, el dígito es igual a 1, el inverso es igual a 432 * 10 + 1 = 4321 y num = 0
  • Ahora num = 0, entonces la expresión de prueba num != 0falla y sale el ciclo while. invertido ya contiene el número invertido 4321.

Ejemplo 2: Invierta un número usando un bucle for en Java

  1. public class ReverseNumber {
  2. public static void main(String[] args) {
  3. int num = 1234567, reversed = 0;
  4. for(;num != 0; num /= 10) {
  5. int digit = num % 10;
  6. reversed = reversed * 10 + digit;
  7. }
  8. System.out.println("Reversed Number: " + reversed);
  9. }
  10. }
Cuando ejecutas el programa, la salida será:
Número invertido: 7654321
En el programa anterior, el ciclo while se reemplaza por un ciclo for donde:
  • no se utiliza ninguna expresión de inicialización
  • la expresión de prueba sigue siendo la misma ( num != 0)
  • La expresión de actualización / incremento contiene num /= 10.
Entonces, después de cada iteración, se ejecuta la expresión de actualización que elimina el último dígito de num .
Cuando sale el bucle for, invertido contendrá el número invertido.

Publicar un comentario

0 Comentarios