viernes, 12 de agosto de 2011

Como programar en Java: Ejercicio 2.30

Ejercicio 2.30 de Como Programar en Java 7 edición.

package com.jlm.ccb.ejercicios.capitulo2;

import java.util.Scanner;

/**
 * Aplicación que recibe del usuario un número compuesto
 * por cinco dígitos, separa ese número en sus dígitos
 * individuales y los imprima, cada uno separado de los
 * demás por tres espacios. Supongo que el usuario escribe
 * el número correcto de dígitos
 * Ejercicio 2.30
 * @author LorettoTG
 * @version 1.0
 */
public class SepararNumeroCincoDigitos {
    /**
     * Punto de entrada a la clase y a la aplicación.
     * @param args matriz de argumentos de cadena.
     * @throws Exception NO se generan excepciones.
     */
    public static void main(String[] args) {
        //Se crea un objeto Scanner para obtener la entrada
        //de datos del usuario.
        Scanner entrada = new Scanner(System.in);

        System.out.print("Deme el primer entero: ");
        //Usando el objeto entrada pedimos el siguiente int.
        int primerEntero = entrada.nextInt();

        //Obtenemos las decenas de mil por ejemplo en el caso de 20285
        //seria el 2 al dividir entre 10000.
        int decenaDeMil = primerEntero/10000 ;
        //Eliminamos las decenas de mil al sacar su modulo y quedaría 0285
        primerEntero = primerEntero%10000;
        //Obtenemos las unidades de mil por ejemplo en el caso de 0285
        //seria el 0 al dividir entre 1000.
        int unidadDeMil = primerEntero / 1000;
        //Eliminamos las unidades de mil al sacar su modulo y quedaría 285
        primerEntero = primerEntero%1000;
        //Obtenemos las centenas por ejemplo en el caso de 285
        //seria el 2 al dividir entre 100.
        int centenas = primerEntero/100;
        //Eliminamos las centenas al sacar su modulo y quedaría 85
        primerEntero = primerEntero%100;
        //Obtenemos las decenas por ejemplo en el caso de 85
        //seria el 8 al dividir entre 10.
        int decenas = primerEntero/10;
        //Eliminamos las decenas al sacar su modulo y quedaría 5
        primerEntero = primerEntero%10;
        //Asignamos el 5 a unidades
        int unidades = primerEntero;

        //Usando %d indicamos que esperamos int, cada %d
        //corresponde en orden a los argumentos que son
        //decenaDeMil, unidadDeMil....
        System.out.printf("%d   %d   %d   %d   %d",
                decenaDeMil, unidadDeMil, centenas,
                decenas, unidades);

    }
}

No hay comentarios:

Publicar un comentario