Está en la página 1de 1

Bueno este es el cdigo, espero que se entienda y que te sirva aunque sea un poco.

import java.util.Scanner;
public class Separar{
public static void main(String[] args){
Scanner in = new Scanner(System.in);
String[] nombres = {
"Unidades", "Decenas", "Centenas",
"Unidades de Mil", "Decenas de Mil", "Centenas de Mil",
"Unidades de Millon", "Decenas de Millon", "Centenas de Millon",
"Unidades de Mil de Millon", "Decenas de Mil de Millon", "Centenas de Mil de Mil
lon",
"Unidades de Billon", "Decenas de Billon", "Centenas de Billon",
"Unidades de Mil de Billon", "Decenas de Mil de Billon", "Centenas de Mil de Bil
lon",
"Unidades de Trillon", "Decenas de Trillon", "Centenas de Trillon",
"Unidades de Mil de Trillon", "Decenas de Mil de Trillon", "Centenas de Mil de T
rillon",
"Unidades de Cuatrillon", "Decenas de Cuatrillon", "Centenas de Cuatrillon"
};
System.out.print("Introduzca un numero (Como cadena)\nLimite 27 caracteres: ");
String n = in.next();
separarPorPartes(n,nombres);
System.out.println("-- -- -- -- -- -- -- -- -- --\n");
System.out.println("Introduzca un numero (Como entero)\nLimite 2147483647: ");
int nEntero = in.nextInt();
separarPorPartes(nEntero,nombres);
}
private static void separarPorPartes(String n,String[] nombres){
System.out.println("El numero " + n + " esta compuesto por: ");
for(int i = n.length() - 1,j = 0; i >= 0; i--,j++){
System.out.println( n.charAt(i) + " " + nombres[j]);
}
}
private static void separarPorPartes(int nEntero,String[] nombres){
System.out.println("El numero esta "+ nEntero +" compuesto por: ");
int j = 0;
while( nEntero > 0 ){
System.out.println( (nEntero%10) + " " + nombres[j] );
nEntero = nEntero/10;
j++;
}
}
}