Diversión con Java: dibuja un diamante
Recientemente encontré una solicitud interesante de un estudiante de Java en uno de los foros que leí. Se le pidió a su clase que usara un bucle for para extraer un diamante de los asteriscos (*). Tenía una solución correcta y funcional, pero había sido marcada porque era demasiado complicada y presentaba varios bucles. El alumno solicitó sugerencias sobre formas más fáciles de lograr el mismo resultado. Pensé que este era un problema interesante y decidí probarlo. Mi programa está debajo (o puede descargar una copia aquí.) Esto claramente no es un código de producción, por un lado, aunque me encanta la simplicidad del operador?: Trato de no usarlo en el código de producción porque muchos los programadores descubren que hace que sea más difícil de leer y comprender. Sin mencionar, este código se romperá si anchura máxima se cambia a un número mayor que 46. Pero es un ejemplo de un método bastante compacto y lógico para lograr el resultado deseado. ¿Puedes hacerlo mejor? Informar de nuevo en nuestro foro.

/*
 * diamonds.java
 *
 * Creado el 4 de junio de 2007, 11:39 p.m.
 */

/**
 *
 * @autor Julie Baumler
 */
diamantes de clase pública {

/ ** Crea una nueva instancia de diamantes * /
diamantes públicos () {
}

/**
* @param argumenta los argumentos de la línea de comando
*/
public static void main (String [] args) {
int max_width = 9; // # de caracteres de ancho para hacer diamantes
int ancho = max_width% 2 == 0? max_width / 2: max_width / 2 +1;
Cadena de estrellas = "********************************************** ";
Espacios de cadena = "";
para (int i = 1; i <(ancho * 2); i ++) {
System.out.print (espacios.substring (0, (i System.out.println (stars.substring (0,2 * (i <= ancho? I: ancho- (i% ancho)) - 1));
}

}

}

La solicitud original:
Pinimo "Ayúdame con Java (sic)". Publicación en línea. Semana del 13 de mayo de 2007. Java Discussion (Forum). 4 de junio de 2007.

Instrucciones De Vídeo: Java Netbeans - Dibujar Figuras en Java (Octubre 2020).