Foro de elhacker.net

Foros Generales => Dudas Generales => Mensaje iniciado por: itzg3 en 17 Junio 2018, 18:38 pm



Título: Necesito ayuda con estructura de control FOR
Publicado por: itzg3 en 17 Junio 2018, 18:38 pm
Hola por favor quisiera que me ayudaran a resolver este pequeño ejercicio que tengo algunas dudas ya que soy principiante en la programación para resolver lo siguiente:

Citar
Desarrolla un programa que muestre todos los valores de un contador de 6 dígitos empezando por
0000 y acabando en 9999 con la particularidad que cada vez que se deba mostrar un 3 se muestre E

Este es mi código que estuve realizando:
Código:
public static void main(String[] args) {
        

        for (int i = 00; i <= 99 ; i++){
            String cadena= String.valueOf(i);
                
           for(int j = 0; i <cadena.length() ; i++){
               char letra = cadena.charAt(i);
               if(letra=='3'){
                   cadena.replace('3', 'E');
               }
           }
            System.out.println(cadena);
        }        
    }

No logra reemplazar el tres por la letra E, tampoco iniciar con dos ceros la variable "i", por el contrario siempre inicia desde "0" y va incrementandose.
Cambie los digitos a dos en el bucle para probar y que no demore en ejecutar.



Título: Re: Necesito ayuda con estructura de control FOR
Publicado por: A.I. en 17 Junio 2018, 22:19 pm
En Java los Strings son inmutables. Por lo tanto y si miras la documentación de replace verás que devuelve una cadena y no modifica la cadena original. Además replace ya se hace sobre toda la cadena, no necesitas el for interior.
Para darle el formato de seis dígitos enteros puedes usar String.format

Código
  1. public static void main(String[] args) {
  2.   String cadena;    
  3.  
  4.        for (int i = 00; i <= 99 ; i++){
  5.    cadena = String.format("%06d", i);
  6.    System.out.println(cadena.replace('3', 'E'));
  7.        }        
  8. }
  9.  

Saludos!


Título: Re: Necesito ayuda con estructura de control FOR
Publicado por: itzg3 en 18 Junio 2018, 15:33 pm
Muchas gracias A.I, fue de gran ayuda su respuesta, ya solucione el caso. Por falta de conocimiento respecto a la clase String fue que no tenia idea para resolverlo, seguire estudiando.
Saludos