A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

各位大神们,早期开始学习for循环的时候的几个联系题,打印出菱形倒是OK 。下面就是简单的实例:/*    打印出实心菱形:    *
                       ***
                      *****
                     *******
                      *****
                       ***
                        *

*/


class ForForTest2
{
        public static void main(String[] args)
        {
                for(int x=0;x<4;x++)
                {
                        for(int y=x+1;y<4;y++)
                        {
                                System.out.print(" ");
                        }
                        for(int z=0;z<=x;z++)
                        {
                                System.out.print("*");
                        }
                        for(int m=0;m<x;m++)
                        {
                                System.out.print("*");
                        }
                        System.out.println();
                }
               
                for(int a=0;a<4;a++)
                {
                        for(int b=0;b<=a;b++)
                        {
                                System.out.print(" ");
                        }
                        for(int c=a;c<3;c++)
                        {
                                System.out.print("*");
                        }
                        for(int d=a;d<2;d++)
                        {
                                System.out.print("*");
                        }
                        System.out.println(" ");
                }
        }
}


但是后来加大难度,打印空心菱形,我始终没有想明白怎么去写,求指教。
打印出空心菱形:       *
                              * *
                             *   *
                            *     *
                             *   *
                              * *       
                               *


5 个回复

正序浏览
空心的话。只要搞清楚在哪里才需要输出*号。就完成了。
这种练习题 最好用绝对值。也就是坐标法。利用上下是对称的性质来用绝对值。
一个for循环就完事...
回复 使用道具 举报
本帖最后由 zx0210 于 2015-8-29 02:20 编辑
嗜血冥命 发表于 2015-8-28 23:35
哎,我等学渣,空心菱形还是弄不出来。实心菱形都是花了一中午才弄出来的。 ...

空心菱形经过我1个小时的推敲,终于出来了!!
实心菱形我用了5个for循环,空心菱形只用了4个for循环!!
回复 使用道具 举报
我觉得用绝对值,会少几个for循环,!
回复 使用道具 举报
zx0210 发表于 2015-8-28 23:27
其实楼主跟我的想法差不多,只不过我打印出来的是一个大的“X",改动一点就可以变成很多的图形,比如你的菱 ...

哎,我等学渣,空心菱形还是弄不出来。实心菱形都是花了一中午才弄出来的。
回复 使用道具 举报
其实楼主跟我的想法差不多,只不过我打印出来的是一个大的“X",改动一点就可以变成很多的图形,比如你的菱形,铁丝网,V和W等
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马