在 Python 海龟绘图中,绘制多角星是个常见问题,在这里对多角星进行总结。

绘制方法

例如,在绘制边长为 100 的五角星的时候。使用方法为
Python
for i in range(0,5):
    t.fd(100)
    t.rt(180-180/5)
例如,在绘制边长为 100 的七角星的时候。使用方法为
Python
for i in range(0,7):
    t.fd(60)
    t.rt(180-180/7)

为什么没有偶数角星

偶数角星,不能一笔画。在一笔画问题中,要求图中交叉点的顶点数目等于0或者2。

而偶数角星不符合一笔画的要求。

在多角形绘制中,为什么转过的角度是 180-180 / n 呢?

每一个多角星都会有一个外接圆。圆周角的度数等于它所对的弧度数的一半。所以 n 角星,就是 360 / 2 / n=180 / n。

则转过的角度是 180-180 / n。