1. 割圆术:
编写程序,画一个半径为200的圆形,然后不断地从键盘通过turtle.numinput命令输入多边形的边数来画圆形的内接正多边形,如:输入3的时候,图形大概是下面这样:
turtle.numinput命令接收两个参数,返回浮点数据,如果调用了这个命令但直接取消,则返回None
以下是参考答案:
import turtle
def draw_polygon(points):
turtle.penup()
turtle.goto(points[0])
turtle.pd()
for p in points[1:]:
turtle.goto(p)
turtle.goto(points[0])
turtle.pu()
r = 200
turtle.penup()
turtle.fd(r)
turtle.left(90)
turtle.pd()
turtle.circle(r)
turtle.pu()
turtle.right(90)
turtle.bk(r)
while True:
turtle.home()
cors = []
n = int(turtle.numinput('提示','边数'))
if n==None:break
turtle.fd(r)
turtle.left(90)
for i in range(n):
turtle.circle(r,360/n)
cors.append(turtle.position())
draw_polygon(cors)
