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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

题目:打印 n=6 的三角数字阵
        1        
        2  3  
        4  5  6
        7  8  9  10
        11 12 13 14 15
        16 17 18 19 20 21
解法一:需要定义三个变量
class  Demo
{
        public static void main(String[] args)
        {
                int z=0;
                for(int x=1;x<=6;x++) //外循环控制打印的行数
                {
                        for (int y=1;y<=x;y++ )   //内循环控制打印的每行的个数
                        {
                                z++;
                                System.out.print(z+"\t");
                        }
                        System.out.println();
                }
        }
}
解法二:        不需第三方变量
class  Demo
{
        public static void main(String[] args)
        {
                for(int x=1;x<=6;x++)
                {
                        for (int y=(x*x-x+2)/2;y<=((x*x+x)/2);y++ )    //通过数学规律可计算出:(x*x-x+2)/2为第x行的最小值,(x*x+x)/2为第x行的最大值
                        {
                                System.out.print(y+"\t");
                        }
                        System.out.println();
                }
               
        }
}


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马