Mostrar un contador de 5 digitos

Programa Java que muestre todos los valores de un contador de 5 dígitos empezando por 00000 y acabando en 99999 con la particularidad que cada vez que se deba mostrar un 3 se muestre E.
Solución: para resolverlo anidamos 5 bucles for, uno para cada dígito del contador.
public class MostrarContador5Digitos {

    public static void main(String[] args) {
        for (int i = 0; i <= 9; i++) { 
            for (int j = 0; j <= 9; j++) {
                for (int k = 0; k <= 9; k++) {
                    for (int l = 0; l <= 9; l++) {
                        for (int m = 0; m <= 9; m++) {
                             System.out.print(i != 3 ? i : "E");
                             System.out.print(j != 3 ? j : "E");
                             System.out.print(k != 3 ? k : "E");
                             System.out.print(l != 3 ? l : "E");
                             System.out.println(m != 3 ? m : "E");                                           
                        }
                    }
                }
            }
        }
    }
}
La salida del programa (de forma abreviada) será esta:
00000
00001
00002
0000E
00004
.....
29998
29999
E0000
E0001
E0002
E000E
.....
04EE8
04EE9
04E40
.....
99998
99999

7 comentarios:

  1. En la condición no me lo permite por que dice que es incompatible operador condicional entre int y string

    ResponderEliminar
    Respuestas
    1. Lo acabo de probar de nuevo y funciona bien. Comprueba si has escrito bien las condiciones. Si sigue el error copia tu código para ver qué puede ser..

      Eliminar
  2. no podrias hacerlo usando arrays y ciclos?

    ResponderEliminar
  3. Como seria en c++ ? Utilizando if?

    ResponderEliminar
    Respuestas
    1. este programa usa if. La forma System.out.print(i != 3 ? i : "E"); equivale a un:
      if(i!=3){
      System.out.print(i);
      } else{
      System.out.print("E");
      }

      Eliminar