>>> import math
>>> math.sin(68)
-0.897927680689
Run Code Online (Sandbox Code Playgroud)
但
sin(68) = 0.927 (3 decimal places)
Run Code Online (Sandbox Code Playgroud)
关于为什么我得到这个结果的任何想法?
谢谢.
我用Meteor.它在服务器和客户端上都使用Javascript.
我跑的时候Math.sin(356644061314425) * 10000得到:
-9986.46139381927 在服务器上
-9986.46115497749 在客户端/浏览器/应用程序上
为什么是这样?我怎么能阻止这个?
编辑:建议的重复问题是指度/弧度.我认为我的更多是运行时问题.
我想在pygame中做一个自上而下的射击游戏.当我添加代码以使玩家朝他们面对的方向移动时.玩家会朝奇怪的方向移动.这是我正在使用的代码:
if pygame.key.get_pressed()[K_UP]:
playerX = playerX - math.cos(playerFacing)
playerY = playerY - math.sin(playerFacing)
if pygame.key.get_pressed()[K_DOWN]:
playerX = playerX + math.cos(playerFacing)
playerY = playerY + math.sin(playerFacing)
Run Code Online (Sandbox Code Playgroud)
我尝试输入math.cos(90)并且它等于-0.299515394756但是我的计算器告诉我它等于0.我可能只是犯了一个愚蠢的错误,但任何人都可以告诉我我做错了什么.谢谢Xeno