打印自定图案

数字阶梯

--------打印数字阶梯--------
        1
       121
      12321
     1234321
    123454321
   12345654321
  1234567654321
 123456787654321
12345678987654321
package com.bao;

public class Main {
    public static void main(String[] args) {
        System.out.println("--------打印数字阶梯--------");
        for (int i=1;i <= 9;i++){
            // 打印数字前面的空格
            for (int j=9;j > i;j--){
                System.out.print(" ");
            }
            // 从小到大打印数字
            for (int j=1;j <= i;j++){
                System.out.print(j);
            }
            // 从大到小打印数字
            for (int j=i-1;j >= 1;j--){
                System.out.print(j);
            }
            System.out.println();
        }
    }
}

print("--------打印数字阶梯--------");

for i in range(1, 10):
    kong = 10 - i
    while kong > 0:
        print(" ", end='')
        kong -= 1
    for j in range(1, i + 1):
        print(j, end='')
    for j in reversed(range(1, i, 1)):
    # for j in range(i - 1, 0, -1):
        print(j, end='')
    print()

# 另一种
for i in range(1, 10):
    kong = 10 - i
    while kong > 0:
        print(" ", end='')
        kong -= 1
    for j in range(1, i + 1):
        print(j, end='')
    while i > 1:
        i = i - 1
        print(i, end='')
    print()

实心菱形

--------打印实心菱形--------
        * 
      * * * 
    * * * * * 
  * * * * * * * 
* * * * * * * * * 
  * * * * * * * 
    * * * * * 
      * * * 
        * 
package com.bao;

public class Main {
    public static void main(String[] args) {
        System.out.println("--------打印实心菱形--------");
        // 上半部分,5行正立三角形
        for (int i=1;i <= 5;i++){
            for (int j=4;j >= i;j--){
                System.out.print("  ");
            }
            for (int j=1;j <= 2 * i-1;j++){
                System.out.print("* ");
            }
            System.out.println();
        }
        // 下半部分,4行倒立三角形
        for (int i=1;i <= 4;i++){
            for (int j=1;j <= i;j++){
                System.out.print("  ");
            }
            for (int j=1;j <= 9-2 * i;j++){
                System.out.print("* ");
            }
            System.out.println();
        }
        
    }
}
print("--------打印实心菱形--------")
num = 6
for i in range(1, num):
    print('  '*(num-i),end='')
    print('* '*(2*i-1),end='')
    print()
for i in range(2,num):
    print('  '*i,end='')
    print('* '*(2*num-3-(2*i-2)),end='')
    print()

空心菱形

--------打印空心菱形--------
        * 
      *   * 
    *       * 
  *           * 
*               * 
  *           * 
    *       * 
      *   * 
        * 
package com.bao;

public class Main {
    public static void main(String[] args) {
        System.out.println("--------打印空心菱形--------");
        for (int i=1;i <= 5;i++){
            for (int j=4;j >= i;j--){
                System.out.print("  ");
            }
            for (int j=1;j <= 2 * i-1;j++){
                if (j == 1 || j == 2 * i-1){
                    System.out.print("* ");
                } else {
                    System.out.print("  ");
                }
            }
            System.out.println();
        }
        for (int i=1;i <= 4;i++){
            for (int j=1;j <= i;j++){
                System.out.print("  ");
            }
            for (int j=1;j <= 9-2 * i;j++){
                if (j == 1 || j == 9-2 * i){
                    System.out.print("* ");
                } else {
                    System.out.print("  ");
                }
            }
            System.out.println();
        }
    }
}
print("--------打印空心菱形--------")
num = 6
for i in range(1,num):
    for j in range(num-1,i,-1):
        print('  ', end='')
    for j in range(1,2*i):
        print('* ', end='') if (j == 1 or j == 2 * i - 1) else print('  ', end='')
    print()
for i in range(1,num):
    for j in range(1,i+1):
        print('  ', end='')
    for j in range(1,2*num-3-2*i+1):
        print('* ', end='') if (j==1 or j==2*num-2-2*i-1) else print('  ', end='')
    print()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值