Java - imprimir 30 posiciones con salto de linea cada 10

 
Vista:

imprimir 30 posiciones con salto de linea cada 10

Publicado por Danni (12 intervenciones) el 08/12/2021 06:32:29
me podrían ayudar con esto? quiero que imprima 30 posiciones, que cada 10 posiciones haga un salto de linea y continúe en la posición que se quedó hasta 30

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public void mostrarLockersOcupados() {
        for (int i = 0; i < lockers.length; i++) {
            String ocupado;
            if (lockers[i] == null) {
                ocupado = "";
            } else {
                ocupado = "XXX";
            }
            int contador = 0;
            if (contador > 0 && contador < 30) {
                System.out.printf("|%7s %7s |", "", i + 1 + " " + ocupado);
                contador++;
            }
 
        }
        System.out.println("");
    }

lo que hace el método es que cuando encuentra un locker ya registrado imprime XXX para decir que esta ocupado y al lado el numero de locker o sea la posición
por si se pregunta el if lo puse solo para comprobar que si imprimiera bien lo de ocupado, pero no supe como hacer lo de arriba
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Billy Joel
Val: 2.665
Oro
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

imprimir 30 posiciones con salto de linea cada 10

Publicado por Billy Joel (876 intervenciones) el 09/12/2021 16:40:52
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public void mostrarLockersOcupados() {
    int contador = 0;
    for (int i = 0; i < lockers.length; i++) {
        String ocupado;
        if (lockers[i] == null) {
            ocupado = "";
        } else {
            ocupado = "XXX";
        }
        if (contador > 0 && contador < 30) {
            System.out.printf("|%7s %7s |", "", i + 1 + " " + ocupado);
            contador++;
        }
        if(contador == 30){
            System.out.println();
            contador = 0;
        }
    }
    System.out.println("");
}

Saludos,
Billy Joel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

imprimir 30 posiciones con salto de linea cada 10

Publicado por Danni (12 intervenciones) el 09/12/2021 17:52:36
usé el código que me diste y me lo imprimía corrido como lo tenia al inicio, pero le modifiqué unas cosas y ya funciona bien, gracias
if (contador > 0 && contador < 30) en tu código la linea era así y yo cambié los contadores porque si está en > 0 nunca va a iniciar así que lo puse como >= 0 y en la segunda parte de la condición lo puse como <10 porque solo quiero que imprima 10 números por fila también cambié el contador del segundo if a 10 y así me funcionó bien, aun así tu código me sirvió mucho para guiarme graciass

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public void mostrarLockersOcupados() {
        Scanner tec = new Scanner(System.in);
        int contador = 0;
        for (int i = 0; i < lockers.length; i++) {
            String ocupado;
            if (lockers[i] == null) {
                ocupado = "";
            } else {
                ocupado = "XXX";
            }
            if (contador >= 0 && contador < 10) {
                System.out.printf("|%7s %7s |", "", i + 1 + " " + ocupado);
                contador++;
            }
            if (contador == 10) {
                System.out.println();
                contador = 0;
            }
        }
        System.out.println("");
    }
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

imprimir 10 posiciones por linea, de 100 numeros, cada linea enumerada

Publicado por H&m3n0 (1 intervención) el 28/08/2022 00:23:21
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int contador = 0, cont2 = 1;
for (i = 0; i < arreglo.length; i++) {
            if (contador >= 0 && contador < 10) {
                if (arreglo[i] == 0) {
                    System.out.print(" 1~~");
                }
                System.out.print(arreglo[i] + ", ");
                contador++;
            }
 
            if (contador == 10) {
                cont2++;
                System.out.println();
                if (cont2 == 11) {
                    continue;
                }
                System.out.print(" " + cont2 + "~~");
                contador = 0;
 
            }
 }
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar