叠加等边三角形

import turtle
def drawTriangle(num,len,flag):#flag用来调整画三角形的方向
    flag*=-1
    len/=2
    if(num==1):
        if(flag==1):
            turtle.left(60)
            turtle.fd(len)
            turtle.right(120)
            turtle.fd(len)
            turtle.right(120)
            turtle.fd(len)
            turtle.left(120)
        else:
            turtle.right(60)
            turtle.fd(len)
            turtle.left(120)
            turtle.fd(len)
            turtle.left(120)
            turtle.fd(len)
            turtle.right(120)
    else:
        if(flag==1):
            turtle.left(60)
            turtle.fd(len/2)
            num=num-1
            turtle.right(60)
            drawTriangle(num,len,flag)
            turtle.fd(len/2)
            turtle.right(120)
            turtle.fd(len)
            turtle.right(120)
            turtle.fd(len)
            turtle.left(120)#注意递归过程中画笔返回的角度
        else:
            turtle.right(60)
            turtle.fd(len/2)
            num=num-1
            turtle.left(60)
            drawTriangle(num,len,flag)
            turtle.fd(len/2)
            turtle.left(120)
            turtle.fd(len)
            turtle.left(120)
            turtle.fd(len)
            turtle.right(120)#注意递归过程中画笔返回的角度
        

def main():
    turtle.setup(600,600, 200, 200)
    turtle.pendown()
    turtle.speed(2)
    turtle.pensize(5)
    drawTriangle(5,512,-1)
    turtle.hideturtle()#隐藏画笔图标
main()
turtle.done()

 

上一篇:小鱼塘APP开发


下一篇:5.14编写程序,提示用户从键盘输入一个正整数,然后以降序的顺序输出该数的最小因子,例如如果输入的数是120 应该显示的是5 , 3 , 2 , 2,2