用python中的循环嵌套编写各类三角形

循环可以帮助我们解决需要重复做多次的事情,本篇内容包括用for循环的嵌套编写不同类型的三角形,望采纳。

此处需要特别注意的是range()函数的使用,range()函数的范围是一个前闭后开的区间。例如range(1,6),其中能取到的值为[1,6),即1,2,3,4,5。

第一种:直角在左上

法一:(外层循环控制行,内层循环控制列,当行数小于等于列的时候都输出三角形即可)

print("---------------左上三角形--------------------")
for i in range(1,6):
    for j in range(1,6):
        if(i<=j):
            print("*",end = " ")
    print()

法二:(直接控制内层循环的范围亦可)

print("---------------左上三角形--------------------")
for i in range(1,6):
    for j in range(1,7-i):
        print("*",end = " ")
    print()

第二种:直角在左下 

法一:(当列数小于等于行数的时候,直接打印三角形)

print("---------------左下三角形--------------------")
for i in range(1,6):
    for j in range(1,6):
        if(j<=i):
            print("*",end=" ")
    print()

法二: 

print("---------------左下三角形--------------------")
for i in range(1,6):
    for j in range(1,i+1):
        print("*",end=" ")
    print()

第三种:直角在右上

此处需要注意,在打印“*”号之前会有空格的出现,每一行空格的数量为 0、1、2、3、4依次增加,所以内层循环用到了两个循环,第一个内循环输出打印空格,第二个内循环输出打印“*”。
print("----------------右上三角形-------------------")
for i in range(1,6):
    for j in range(0,i-1):
        print(" ",end= " ")#先打印“ ” 第一行0个空格第二行1个
    for k in range(1,7-i):
        print("*",end=" ") #先打印*
    print()

第四种:直角在右下 

 

此处需注意的是,每一行空格的数量为4、3、2、1、0依次递减,而“*”的数量刚好和行号相等。
print("-----------------右下三角形------------------")
for i in range(1,6):
    for j in range(1,6-i):#空格的数量:4 3 2 1
            print(" ",end=" ") #先打印空格
    for k in range(i):
            print("* ",end="")  #后打印*
    print()

第五种:等腰三角形

 等腰三角形与前面不同的是“*”的数量明显增多,但是也很好找其中的关系。每一行空格的数量为4、3、2、1、0依次递减,而“*”的数量则为(2*行数-1)。

print("----------------等腰三角形-------------------")
for i in range(1,6):
    for j in range(1,6-i):  #空格是 4 3 2 1 0递减
        print(" ",end=" ")
    for k in range(1,2*i):    #*是1 3 5 7 9 递增
        print("*",end=" ")
    print()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值