我正在编写一个小程序来计算在某些行星体上发射的物体的轨迹,然后用Turtle图形绘制它们。目前,我遇到了类似错误的问题,我似乎无法弄明白。
所以,这是堆栈:
Traceback (most recent call last):
File "MY FILEPATH", line 174, in <module> main()
File "MY FILEPATH", line 153, in main
x1,y1 = xtoy(dist(velo,ang,grav),velo,ang,grav,i)
File "MY FILEPATH", line 66, in xtoy
sety = int(dist*tan(ang)-(grav*dist**2)/(2*velo**2*cos*((cos(ang)))))
TypeError: unsupported operand type(s) for *: 'int' and 'builtin_function_or_method'
这是代码的pastebin。
我绝对难过,并且已经让我的大脑震惊了一个星期。任何帮助都会得到真正的赞赏。
答案 0 :(得分:3)
你有2 * cos
。这是试图将函数乘以函数cos
的2倍。您需要在第二部分中使用的余弦。也许你的意思是2*cos(ang)*cos(ang)
?
答案 1 :(得分:1)
在倒数第二个cos
之后你有一个额外的*,它将它视为内置而不是评估参数。