miércoles, 31 de agosto de 2011

Como Programar en Java: Ejercicio 4.30

Aquí esta el ejercicio 4.30 de Como Programar en Java séptima edición.

package com.jlm.ccb.ejercicios.capitulo4;

import java.util.Scanner;

/**
 * Clase encargada de analizar un entero de 5
 * dígitos e indicar si es o no es palíndromo.
 * Ejercicio 4.30
 * @author LorettoTG
 * @version 1.0
 *
 */
public class PalindromoNumero {
    /**
     * Método encargado de analizar si el numero es
     * o no es un palíndromo, existen mejores formas
     * de realizarlo pero debemos utilizar lo
     * aprendido hasta este momento.
     */
    public void analizar() {
        //Se crea un objeto Scanner para obtener la entrada
        //de datos del usuario.
        Scanner entrada = new Scanner(System.in);
        System.out.println("Deme el entero de 5 digitos: ");
        int entero = entrada.nextInt();

        //En el caso del ciclo while: Primero se evalúa la condición de entrada
        //si es verdadera ejecuta las sentencias en su cuerpo, luego vuelve a
        //verificar la condición de entrada y hasta que sea falsa sale del ciclo.
        while ((entero < 9999) || (entero > 100000)) {
            System.out.println("No es un entero de 5 digitos");
            System.out.println("Deme el entero de 5 digitos: ");
            entero = entrada.nextInt();
        }

        //Si el primer dígito es igual al ultimo dígito
        if ((entero / 10000) == (entero % 10)) {
            //Se quita el primer dígito
            entero = entero % 10000;
            //Se quita el ultimo dígito
            entero = entero / 10;
            if ((entero / 100) == (entero % 10)) {
                System.out.println("Es un palíndromo");
            } else {
                System.out.println("No es un palíndromo");
            }
        } else {
            System.out.println("No es un palíndromo");
        }
    }

    /**
     * Punto de entrada a la clase y a la aplicación.
     * @param args matriz de argumentos de cadena.
     */
    public static void main(String[] args) {
        //El operador new es el encargado de crear instancias de
        //una clase, es decir los objetos que tienen las características
        //de la clase. El operador new de Java es capaz de reservar la
        //memoria para un objeto de este tipo sabiendo los atributos que
        //tiene según la definición de la clase.
        PalindromoNumero palindromo = new PalindromoNumero();
        palindromo.analizar();
    }
}

No hay comentarios:

Publicar un comentario