为了制作钻石,您需要设置空间和星星的形状。因为我是初学者,所以我只使用嵌套循环制作了这个简单的程序。
public class Diamond {
public static void main(String[] args) {
int size = 9,odd = 1, nos = size/2; // nos =number of spaces
for (int i = 1; i <= size; i++) { // for number of rows i.e n rows
for (int k = nos; k >= 1; k--) { // for number of spaces i.e
// 3,2,1,0,1,2,3 and so on
System.out.print(" ");
}
for (int j = 1; j <= odd; j++) { // for number of columns i.e
// 1,3,5,7,5,3,1
System.out.print("*");
}
System.out.println();
if (i < size/2+1) {
odd += 2; // columns increasing till center row
nos -= 1; // spaces decreasing till center row
} else {
odd -= 2; // columns decreasing
nos += 1; // spaces increasing
}
}
}
}
如您所见nos
,是空格数。直到中间行需要减少,并且需要增加星星的数量,但在中间行之后则相反,即空间增加,星星减少。
size
可以是任何数字。我在这里将它设置为 9,所以我将有一个 9 号星形,最大 9 行和 9 列...空间数(nos
)将是9/2 = 4.5
。但是java会把它当作4,因为int
不能存储十进制数,并且中心行会是9/2 + 1 = 5.5
,这将导致5 as int
。
所以首先你会做行......因此有 9 行
(int i=1;i<=size;i++) //size=9
然后像我一样打印空格
(int k =nos; k>=1; k--) //nos being size/2
然后终于星星
(int j=1; j<= odd;j++)
一旦线路结束......
您可以使用 if 条件调整星号和空格。