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)
发表评论