Ниже приведен код для нижней половины:
space += 2;
for (j = n - 1; j > 0; j--) {
for (i = 0; i < space; i++) {
System.out.print(" ");
}
System.out.print(" ");
space++;
for (i = j; i <= 2 * j - 1; i++) {
System.out.print("* ");
}
System.out.println(" ");
}
Я только что повторно использовал код ваших внутренних циклов для верхней половины. Единственное, что нового в нем - это манипуляции с space
.
Полный код:
import java.util.Scanner;
public class Diamonds {
public static void main(String args[]) {
int n, i, j, space = 0;
System.out.print("Enter the number of rows: ");
Scanner s = new Scanner(System.in);
n = s.nextInt();
space = n - 0;
for (j = 0; j <= n; j++) {
for (i = 0; i < space; i++) {
System.out.print(" ");
}
System.out.print(" ");
space--;
for (i = j; i <= 2 * j - 1; i++) {
System.out.print("* ");
}
System.out.println(" ");
}
space += 2;
for (j = n - 1; j > 0; j--) {
for (i = 0; i < space; i++) {
System.out.print(" ");
}
System.out.print(" ");
space++;
for (i = j; i <= 2 * j - 1; i++) {
System.out.print("* ");
}
System.out.println(" ");
}
}
}
Пример выполнения:
Enter the number of rows: 5
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*