Python龟对角线长度不对?

时间:2016-03-10 19:21:21

标签: python geometry turtle-graphics

当尝试绘制一条带有对角线的正方形时,该线条的渲染长度不正确。 代码:

import turtle
i = 0
while i < 4:
    turtle.forward(100)
    turtle.left(90)
turtle.left(135)
turtle.forward(100)

循环应该(并且确实)绘制一个完美的正方形。 以下两行应该将乌龟朝右方向转向对角线(并且这样做)。

我的几何知识告诉我,在正方形中,对角线的长度等于边长。

此示例无法实现此目的。对角线停在约2/3处。如果我将海龟向前送出145步,它就会起作用 - 但这对我来说完全是胡说八道。我想在学生的课堂上使用这个,我不能理解这个问题。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

不知道为什么,但在我的电脑上转过135并未将线放在广场内。

这就是我做的事情

import turtle
from math import sqrt

side = 100
turn_angle = 90

for i in range(4):
    turtle.forward(side)
    turtle.left(turn_angle)
turtle.left(0.5*turn_angle)
turtle.forward(side*sqrt(2))

turtle.mainloop()

使这个

turtle square with line