Java - triangulo de numeros con bucles for

   
Vista:
Imágen de perfil de Charly

triangulo de numeros con bucles for

Publicado por Charly cdum77@hotmail.com (56 intervenciones) el 06/12/2015 14:24:03
Hola. Soy nuevo en esto ya que estoy en 1º de DAM. En programación (JAVA) me han pedido que haga un ejercicio para sacar un triangulo rectángulo invertido con números pero alineados a la derecha de esta manera:
54321
5432
543
54
5
He intentado hacer algo y me sale pero tabulado a la izquierda. Pongo el codigo por si sirve de ayuda. Muchas gracias por adelantado.
1
2
3
4
5
6
7
8
9
10
11
12
public static void main(String[] args) {
        Scanner teclado=new Scanner(System.in);
        System.out.print("Introduce un numero: ");
        int num=teclado.nextInt();
        String resultado="",esp="  ";
        for(int cont=num;cont>=1;cont--) {
            for(int i=num;i>=num-cont+1;i--){
                System.out.print(i+" ");
            }
            System.out.println("");
        }
    }
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 Jordi

triangulo de numeros con bucles for

Publicado por Jordi (38 intervenciones) el 07/12/2015 09:51:29
¿Con tabulado a la derecha te refieres simplemente a alineado a la derecha?

En tal caso puedes utilizar \t para tabular. Es decir, dentro de los dos bucles for, puedes hacer que si no tiene que imprimirse número, se imprima un "\t", y si tiene que imprimirse número, se imprima número+"\t". De esa forma, te quedarán todos los números como hasta ahora pero tabulados entre ellos y alineados a la derecha.
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
Imágen de perfil de Charly

triangulo de numeros con bucles for

Publicado por Charly cdum77@hotmail.com (56 intervenciones) el 07/12/2015 11:12:30
Gracias por la respuesta Jordi, pero no es esa la solución. En el mensaje que te escribo salen los cincos alineados pero yo necesito que
salgan alineados los de la derecha de arriba a abajo (los 1 2 3 4 5)
5 4 3 2 1
5 4 3 2
5 4 3
5 4
5
Tambien te digo que hay una linea en el codigo que puse antes y que no sirve para nada:
String resultado="",esp=" ";
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
Imágen de perfil de Jordi

triangulo de numeros con bucles for

Publicado por Jordi (38 intervenciones) el 07/12/2015 12:25:42
Hola,
Sí, ya sé lo que quieres decir. Con el código que tienes ya escrito, yo creo que lo más fácil sería hacer otro for que imprima tantos tabuladores como te hagan falta antes de empezar a imprimir números, de la siguiente forma.

1
2
3
4
5
6
7
8
9
for(int cont=num;cont>=1;cont--) {
	for (int j = 0; j < (num-cont); j++) {
		System.out.print("\t");
	}
    for(int i=num;i>=num-cont+1;i--){
        System.out.print(i+"\t");
	}
    System.out.print("\n");
}
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
Imágen de perfil de Charly

triangulo de numeros con bucles for

Publicado por Charly cdum77@hotmail.com (56 intervenciones) el 07/12/2015 12:34:42
Ok muchas gracias Jordi, esta solución si que me ha servido.
Solo era cuestión de meterle otro bucle for para los espacios.
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