5.24 Escriba una aplicación que imprima la siguiente figura de rombo. Puede utilizar instrucciones de salida que impriman un solo asterisco (*), un solo espacio o un solo carácter de nueva línea. Maximice el uso de la repetición ( con instrucciones for anidadas ), y minimice el número de instrucciones de salida.
****
*****
*******
*********
*******
*****
***
*
El siguiente código debe guardarse como UsaDeitel_5_24.java
Este programa puede imprimir un rombo de cualquier tamaño, sólo debe cambiarse la variable Tamano, cuidando que sea un entero impar.
public class UsaDeitel_5_24 { // Abre clase publica UsaDeitel_5_24 public static void main(String args[]) { // Abre main Deitel_5_24 miObjeto = new Deitel_5_24(); // Se llama metodo Imprime() miObjeto.Imprime(); } // Cierra main } // Cierra clase publica UsaDeitel_5_24
El siguiente código debe guardarse como UsaDeitel_5_24.java
public class Deitel_5_24 { // Abre clase Deitel_5_24 private int Tamano = 9; // la varibale Tamano controla la diagonal del rombo // Se define el metodo Imprime public void Imprime() { // Abre metodo Imprime for ( int i = 1; i <= ((Tamano/2) + 1); i ++ ) { // Abre for for ( int k = 1; k <= Tamano / 2 - i + 1; k++ ) System.out.printf(" "); // Este ciclo imprime el triangulo superior for ( int j = (Tamano / 2) - i + 2; j <= (Tamano / 2) + i; j++ ) System.out.printf("*"); System.out.printf("\n"); } // Cierra for // Abre segundo for, que imprime el triangulo de abajo for ( int l = 1; l <= Tamano / 2; l++ ) { // Abre for que imprime el segundo triangulo // Se imprimen los espacios for( int m = 1; m <= l; m++ ) { // Abre for System.out.printf(" "); } // Cierra for for (int n = l + 1; n <= Tamano - l ; n++) System.out.printf("*"); System.out.println(); } // Cierra for que imprime el segundo triangulo } // Cierra metodo Imprime } // Cierra clase Deitel_5_24
en el for de la iteración "k" no le pusiste el paréntesis al "Tamano / 2 - i + 1" porqué da el mismo resultado? java implícitamente lo trabaja con paréntesis?
ResponderEliminar