【发布时间】:2016-09-20 03:41:55
【问题描述】:
我是 Python 新手,目前在海龟图形方面遇到了困难。这就是我要解决的问题
在 Turtellini(蟒蛇生活的星球)上 运输系统用巨大的弹弓推动海龟。一个 特定海龟的原始位置 (x0, y0) 是 (-180, -100)。他是 然后以 88 个单位/单位的初始垂直速度 (vy) 向上发射 秒和每秒 20 个单位的水平速度 (vx) 到 正确的。他旅行了16秒。重力加速度 (g) 是每秒 11 个单位。海龟的位置在 给定秒 (t) 计算如下: x = x0 + vx * t 和 y = y0 + vy * t - g/2 * t2 。这个程序是为了展示一只乌龟在这段时间内是如何旅行的。
输出应该是这样的:
这是我应该做的;
- 设置常数(垂直速度、水平速度、 重力)和变量(x 和 y 坐标)通过以下方式设置海龟 给他一个适当的形状,把他的尾巴竖起来,把他移到 初始位置,把他的尾巴放下做一个循环,重复 1 到 16 秒(含)。在循环显示的每次迭代中 x 和 y 变量的值(在 shell 窗口中),移动 乌龟到那些坐标,让乌龟印上他的形状, 计算循环后 x 和 y 变量的新值 终止,将海龟移动到最后计算的坐标, 更改他的颜色,并标记他的形状,然后等待鼠标点击
到目前为止我的代码:
import turtle
def main():
wn = turtle.Screen()
turtellini = turtle.Turtle()
t = int(input("Blab blab blab: "))
x0 = -180
y0 = -100
vx = 20
vy = 88
g = 11
x = (float(x0 + vx * t))
y = (float(y0 + vy * t - g / 2 * t**2))
turtellini.color("black")
turtellini.shape("turtle")
turtellini.up()
turtellini.goto(-180,-100)
turtellini.down()
for i in range(1,16,1):
turtellini.stamp()
turtellini.forward(i)
turtellini.right(i)
print(x)
print(y)
if __name__ == "__main__":
main()
我知道我做的不好;但是谁能帮我解决这个问题?
【问题讨论】: