循环中的各种三角型集合

第一题:分析:观察图形,共有四行七列,所以要有两个循环分别控制行和列,行列都可以做外循环,但是行的规律比列更容易观察
        从第一行开始符号的个数为1,3,5,7所以有规律j=1+(i-1)*2。利用等差数列公式:an = a1+(n-1)d(一到四题通用!)
8
888
88888
8888888
for (int i = 1; i <=4 ; i++)//外层循环控制几行
for (int j = 1; j <= 1+(i-1)*2; j++)//内层循环控制列
  {
  System.out.print("8");
   }
  System.out.print("\n");//换行符

第二题:

      8                            
    888                           
  88888                            
8888888      

分析:图形有四行有七列,可将图形分成两部看,左边为空格,右边为数字,

左边:最上面有六个空格依次递减两个空格:(8-2*i)

右边:最上面有一个数字最下面有七个数字。有规律:1+(i-1)*2

数字for (int i = 1; i <=4 ; i++) {
    for (int j = 0; j <= (8-2*i) ;j++)//左边空格
     {
         System.out.print(" ");
     }
     for (int a =1;a<=1+(i-1)*2;a++){//右边数字
        System.out.print("8");
     }
     System.out.print("\n");

     }

第三题:

 8888888
 88888
 888
 8

分析:图形有四行有七列,可将图形分成两部看,左边为空格,右边为数字,

左边:最下面有一个数字,最上面有七个数字。有规律:1+(i-1)*2

for (int i = 1; i <=4 ; i++) {
     for (int j = 1; j <=1+(i-1)*2 ; j++) {
          System.out.print("8");
      }
     System.out.print("\n");

第四题:分析:可将三角形看成三部分左边空格,中间数字,右边空格。

            左边空格:可从中间数字的中部(1)向左看,最上面有空格八个,下面有空格零个。有规律:9-i

中间数字:从一到九依次递增。有规律:2*i-1

右边空格:可从中间数字的中部(1)向右看,最上面有空格八个,下面有空格零个。有规律:9-i

                                                                         1        
                                                                       222       
                                                                     33333      
                                                                   4444444     
                                                                 555555555    
                                                               66666666666   
                                                             7777777777777  
                                                           888888888888888 
                                                         99999999999999999

for (int i = 1; i <=9 ; i++) {
   for (int j = 1; j <=9-i ; j++) //左边空格
    {
        System.out.print(" ");
   }
    for (int a = 1; a <=2*i-1 ; a++) //中间数字
    {
        System.out.print(i);//有几行则打印数字几1
    }
    for (int b = 1; b <=9-i ; b++) {//右边空格
        System.out.print(" ");
    }
    System.out.print("\n");


}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值