python 编写正三角形,倒三角和菱形和各种镂空菱形

本文介绍了使用Python通过控制空格和星号的输出,实现正三角、倒三角以及菱形的绘制。代码逻辑清晰,通过双重循环调整空格和星号的数量,以达到不同形状的图形效果。对于菱形,特别注意了正三角与倒三角的拼接,以及在输出倒三角时避免多一行的问题。这些图形绘制的基础知识对于初学者理解编程逻辑和控制结构很有帮助。
摘要由CSDN通过智能技术生成

1.正三角形

a=int(input('\n'))
for i in range(1,a+1):
    s=a-i
    for j in range(0,s):
        print(" ",end="")
    for k in range(i*2-1):
        print('*',end="")
    print()

设计思路:

  1. 确定输入行数
  2. 判断第一个字符距离左边界多少个空格
  3. 判断星号()与行数之间的对应关系(行数2-1)
  4. 每一行输出之后需要换行
    2.倒三角
a=int(input('\n'))
for s in range(a,0,-1):
    for k in range(0,a-s):
        print(" ",end='')
    for c in range(s*2-1):
        print("*",end="")
    print()

3.菱形

a=int(input('\n'))
for i in range(1,a+1):
    s=a-i
    for j in range(0,s):
        print(" ",end="")
    for k in range(i*2-1):
        print('*',end="")
    print()
for s in range(i-1,0,-1):
    for k in range(0,a-s):
        print(" ",end='')
    for c in range(s*2-1):
        print("*",end="")
    print()

设计思路

  1. 菱形的本质可以看做两个三角形拼接而成(一个正三角与一个倒三角)
  2. 需要注意的是输出倒三角的时候应该把第一行去掉(i-1)不然回出现多一行的情况
  3. 倒三角的空格控制可以借助输入的行数来减去第一个循环
    4打印镂空的菱形
a=int(input('\n'))
for i in range(1,a+1):
    s=a-i
    for j in range(0,s):
        print(" ",end="")
    for k in range(i*2-1):
        if k==0 or k==i*2-2:
            print('*',end="")
        else:
            print(' ',end="")
    print()
for s in range(i-1,0,-1):
    for k in range(0,a-s):
        print(" ",end='')
    for c in range(s*2-1):
        if c==0 or c==s*2-2:
            print('*',end="")
        else:
            print(' ',end="")
    print()

如图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值