"""
作者:
功能:draw five_pointed star
版本:3.0
日期:2019/3/16
新增功能:使用迭代操作绘制重复不同大小的图形
"""
import turtle
# def draw_pentagram(size):
# """
# draw five_pointed star function
# """
# count = 1
# while count <= 5:
# turtle.forward(size)
# turtle.right(144)
# count += 1
while(size <= 100)
def draw_recursive_pentagram(size):
"""
迭代绘制五角星
"""
count = 1
while count <= 5:
turtle.forward(size)
turtle.right(144)
count += 1
#五角星绘完成,更新参数
size += 50
draw_recursive_pentagram(size)
def main():
turtle.penup()
turtle.backward(200)
turtle.pendown()
turtle.pensize(2)
turtle.pencolor('red')
size = 50
draw_recursive_pentagram(200)
turtle.exitonclick()
if __name__== '__main__':
main()
递归:
- 函数定义中调用函数自身的方式叫递归
- 能非常简洁地解决重要问题
- 每次函数调用时,函数参数会临时存储,相互没有影响
- 达到终止条件时,各函层结束运算,返回计算结果
- 要注意终止条件的构建,否则递归无法正常返回结果