我想用星号和它的行必须由用户给出的菱形图案。当线数为偶数时,我有问题要制作钻石。这是所有的代码:偶数行的打印钻石
import java.util.Scanner;
public class DrawDiam {
public static void main(String[] args) {
System.out.println("Please give the number of lines");
Scanner in = new Scanner(System. in);
int L = in .nextInt();
if (L < 4) {
System.exit(0);
} else {
if ((L % 2) != 0) {
int add = 1;
int numOfSpaces = L/2;
for (int i = 1; i <= L; i++) {
for (int j = numOfSpaces; j >= 1; j--) {
System.out.print(" ");
}
for (int j = 1; j <= add; j++) {
System.out.print("*");
}
System.out.println();
if (i < (L/2 + 1)) {
add = add + 2;
numOfSpaces = numOfSpaces - 1;
} else {
add = add - 2;
numOfSpaces = numOfSpaces + 1;
}
}
} else {
int add = 1;
int numOfSpaces = L/2;
for (int i = 0; i <= L + 1; i++) {
for (int j = numOfSpaces; j >= 1; j--) {
System.out.print(" ");
}
for (int j = 1; j <= add - 2; j++) {
System.out.print("*");
}
System.out.println();
if (i < (L/2 + 1)) {
add = add + 2;
numOfSpaces = numOfSpaces - 1;
} else {
add = add - 2;
numOfSpaces = numOfSpaces + 1;
}
}
}
}
}
}
所以程序要求一个号码> = 4,奇数部分是运行完美,但对于L = 6偶数部分是走出这样的:
*
***
*****
*******
*****
***
*
例如L = 6应显示this:
*
***
*****
*******
*****
***
*
可以得出它到底应该是什么样子? L = 4的钻石是一种奇怪的想象.. – ergonaut
你会如何绘制偶数的对称钻石? –
我编辑了这个问题以更好地理解它,谢谢! – kllbrd