Primero, determinemos nuestro resultado de salida:

Entonces, ¿cómo podemos lograr esto?
1. Primero, analicemos la estructura del gráfico
Podemos ver que el gráfico tiene 5 líneas en total. Entonces, ¿podemos crear una declaración de bucle for para controlar que sean 5 líneas? La respuesta es afirmativa.
for(int i = 1 ;i <= 5 ;i++ ){
}
Así, creamos un bloque de código de bucle for que se repite 5 veces, siendo el bucle más externo.
2. Luego, analicemos cómo está compuesto el gráfico. Podemos dividirlo en las siguientes partes: /p>

Podemos dividir el gráfico en estos tres triángulos.
3. Crear el triángulo en blanco n.º 1
Podemos ver que la primera línea genera 4 espacios, la segunda genera 3 espacios, la tercera genera 2, la cuarta genera 1 y la quinta no tiene ninguno.
De este patrón se puede ver que es un patrón de decremento sucesivo. Entonces, ¿cómo implementarlo?
Podemos imaginar que del 1 al 5 hay cuatro números en medio; del 2 al 5 hay 3 números en medio, del 3 al 5...
¿Podemos usar este principio? La respuesta es, por supuesto. Entonces, ¿cómo implementarlo? Mire el código:
for(int i = 1;i<=5 ;i++) {
for(int j = 5; j >= i ; j--)//建立1号图形
System.out.print(" ");
System.out.println();
}
La primera declaración for es la declaración de bucle de cinco iteraciones que definimos anteriormente.
El segundo bucle for, vamos a analizarlo:
Primero, definimos una variable j de tipo int y le asignamos el valor 5.
Luego pensamos, ya que queremos acortar la distancia, entonces en cada iteración j se decrementa en 1, lo cual cumple exactamente con nuestro requisito:
En la primera iteración del bucle grande, i=1, j=5, por lo que cumple la condición j>=i, luego imprime un espacio, luego j-1, ahora el valor de j es 4, cumple j>=i, imprime de nuevo.
……
Hasta que j=0, j>=i no se cumple, se sale del bucle interno.
Ahora llega a System.out.println(); para un salto de línea.
Ahora volvemos al bucle externo, i++, i se convierte en 2, cumple i<=5, entra al bucle interno.
Definimos j=5, j>=i, se cumple, imprime un espacio, j-1.
j ahora es 4, j>=i, se cumple, imprime un espacio, j-1.
……
Hasta j=1, j>=i, no se cumple, se sale del bucle interno, y luego salto de línea.
Luego i+1 y luego se entra nuevamente al bucle interno...
Continuando así el ciclo, se forma un triángulo invertido de cuatro líneas, y el patrón n.º 1 queda formado.
4. Crear el gráfico n.º 2. El principio es exactamente el mismo que el gráfico n.º 1, pero justo al revés.
for(int i = 1 ;i<=5 ;i++){
for(int j = 5; j >= i ; j--)//建立1号图形
System.out.print(" ");
for(int j = 1; j <= i; j++)//建立2号图形
System.out.print("*");
System.out.println();
}
Igual que al crear el gráfico n.º 1, pueden entenderlo por sí mismos, así se crea el n.º 2.
5. Crear el gráfico n.º 3
for(int i = 1; i <= 5; i++){
for(int j = 5 ;i <= j; j--)//建立1号图形
System.out.print(" ");
for(int j = 1; j <= i; j++)//建立2号图形
System.out.print("*");
for(int j = 1; j < i; j ++)//建立3号图形
System.out.print("*");
}De manera similar, igual que el n.º 1 y el n.º 2, el principio para crear el gráfico n.º 3 es el mismo.
Pero presten atención a un punto: el gráfico n.º 3 no se imprime en la primera línea, por lo que debemos cortarlo en la primera iteración del bucle grande y permitir que se imprima en la segunda iteración.
Por lo tanto, esta vez la condición de juicio es j < i, eliminando el signo igual.
Código fuente completo:
Correo electrónico del autor colaborador: [email protected]