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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马-王言龙 中级黑马   /  2012-7-17 09:09  /  1827 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 黑马-王言龙 于 2012-7-18 17:35 编辑

*98765432123456789*
   98765432123456789
     876543212345678
       7654321234567
         65432123456
           543212345
             4321234
               32123
                 212
                   1
           
*需求:打印一个10行的三角形,大于9的数用“*”代替
*思路:将此三角形扩展为矩形,先打印最左边的空白位,
*    再打印中间的倒直角三角形,最后打印右边的倒直角三角形。
*    用for循环嵌套,外循环控制行,内部多个循环控制每行上的元素输出           
*/


打印倒的比正的麻烦了一点.
下面是我写的程序,有没有比这简单的分享一下?

public static void drawSanJiaoXing(int num) {    //可以打印任意行数的倒三角形
    int left = num;
    int right = num;
    for(int i=1; i<=num; i++) {    //控制行数
        for(int j=1; j<i; j++) {        //打印空格
            System.out.print(" ");
        }
        for(int j=left--; j>=1; j--) { //打印左边三角形
            if(j>9) {
                System.out.print("*");
            }
            else System.out.print(j);
        }
   
        for(int j=2; j<=right; j++) {  //打印右边三角形
            if(j>9) {
                System.out.print("*");
            }
            else System.out.print(j);
        }
        right--;
        System.out.println();
    }
}

评分

参与人数 1技术分 +1 收起 理由
韦念欣 + 1 赞一个!

查看全部评分

3 个回复

倒序浏览
我用swith () case
画了一个,
好处:不用思考
代码简单
坏处:代码太多


public class Variable {

        public void print() {
                for (int i = 0; i < 9; i++) {
                        switch (i) {
                        case 0:
                                System.out.print("98765432123456789");
                                break;
                        case 1:
                                System.out.print(" 876543212345678");
                                break;
                        case 2:
                                System.out.print("  7654321234567");
                                break;
                        case 3:
                                System.out.print("   65432123456");
                                break;
                        case 4:
                                System.out.print("    543212345");
                                break;
                        case 5:
                                System.out.print("     4321234");
                                break;
                        case 6:
                                System.out.print("      32123");
                                break;
                        case 7:
                                System.out.print("       212");
                                break;
                        case 8:
                                System.out.print("        1");
                                break;
                        
                        }

                        System.out.println();
                }

        }

        public static void main(String[] args)
        {
               
                Variable p = new Variable();
                p.print();

        }

}



评分

参与人数 1黑马币 +1 收起 理由
黑马-王言龙 + 1 淡定

查看全部评分

回复 使用道具 举报
陈少文 发表于 2012-7-18 15:28
我用swith () case
画了一个,
好处:不用思考

嗯,这个简单。
不过,我要打印多少行,这个代码就要写多少个Case。
我打印100行, 就要写100行的代码。
不怎么实用.
回复 使用道具 举报
效果是这样的:
*****************************************98765432123456789*****************************************
  ****************************************98765432123456789****************************************
    ***************************************98765432123456789***************************************
      **************************************98765432123456789**************************************
        *************************************98765432123456789*************************************
          ************************************98765432123456789************************************
            ***********************************98765432123456789***********************************
              **********************************98765432123456789**********************************
                *********************************98765432123456789*********************************
                  ********************************98765432123456789********************************
                    *******************************98765432123456789*******************************
                      ******************************98765432123456789******************************
                        *****************************98765432123456789*****************************
                          ****************************98765432123456789****************************
                            ***************************98765432123456789***************************
                              **************************98765432123456789**************************
                                *************************98765432123456789*************************
                                  ************************98765432123456789************************
                                    ***********************98765432123456789***********************
                                      **********************98765432123456789**********************
                                        *********************98765432123456789*********************
                                          ********************98765432123456789********************
                                            *******************98765432123456789*******************
                                              ******************98765432123456789******************
                                                *****************98765432123456789*****************
                                                  ****************98765432123456789****************
                                                    ***************98765432123456789***************
                                                      **************98765432123456789**************
                                                        *************98765432123456789*************
                                                          ************98765432123456789************
                                                            ***********98765432123456789***********
                                                              **********98765432123456789**********
                                                                *********98765432123456789*********
                                                                  ********98765432123456789********
                                                                    *******98765432123456789*******
                                                                      ******98765432123456789******
                                                                        *****98765432123456789*****
                                                                          ****98765432123456789****
                                                                            ***98765432123456789***
                                                                              **98765432123456789**
                                                                                *98765432123456789*
                                                                                  98765432123456789
                                                                                    876543212345678
                                                                                      7654321234567
                                                                                        65432123456
                                                                                          543212345
                                                                                            4321234
                                                                                              32123
                                                                                                212
                                                                                                  1
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马