600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 怎么用java去打印输出一个菱形。

怎么用java去打印输出一个菱形。

时间:2019-08-15 17:51:09

相关推荐

怎么用java去打印输出一个菱形。

比如要在控制台打印输出一个:

*

***

*****

***

*

我们应该怎么去做呢?首先,这个涉及到行和列,所以,这个肯定是用两个for的嵌套来打印输出。然后,我们要找出这个的规律,因为“磨刀不误砍柴工”,所以找出规律所在,我们才知道应该怎么去下手。比如:我们应该把这个分成上下两个部分,上面部分是:

***** 第一行:三个部分;2个空格 1个*号 2个空格(i=1)

***** 第二行:三个部分;1个空格 3个*号 1个空格 (i=2)

***** 第三行:三个部分;0个空格 5个*号 0个空格 ( i=3)

为了更加方便去找规律,我们把这个图形补充完整,黑色部分代表着空格,也就是没有显示的部分,而红色部分就是我们的图形的上半部分。所以我们可以得出的规律是:*号的数量和i的关系为:2*i-1 而,空格因为左右一样,所以空格为:3-i。所以上半部分的代码可以这样写:

for(int i =1 ;i<=3;i++){

for(int j=1;j<=3-i;j++){

System.out.print(" ");//打印左边的空格

}

for(int j=1;j<=2*i-1;j++){

System.out.print("*"); //打印*号

}

for(int j=1;j<=3-i;j++){

System.out.print(" ");//打印右边空格(也可以省略)

}

System.out.println();//这是每一行打印完就换行

}

那同样的,我们也要在下半部分找出规律来:

***** 第一行:三个部分;1个空格 3个*号 1个空格(i=1)

***** 第一行:三个部分;2个空格 1个*号 2个空格(i=2)

所以我们可以得出的规律是:*号的数量和i的关系为:5-2*i 而,空格因为左右一样,所以空格为:i。所以下半部分的代码可以这样写:

for(int i=1;i<=2;i++){

for(int j=1;j<=i;j++){

System.out.print(" ");

}

for(int j=1;j<=5-2*i;j++){

System.out.print("*");

}

for(int j=1;j<=i;j++){

System.out.print(" ");

}

System.out.println();

}

同样的任何只要是这样的菱形,我们都可以通过这个规律去打印,只需要把上面的数字替换掉,替换成需要打印的数字就可以了,然后规律大家也可以自己去找。只要很认真熟练地打印出这个例子,那么for的嵌套使用就可以比较熟练了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。