gpt4 book ai didi

python - 使用 Python 创建一个单位圆计算器?

转载 作者:太空宇宙 更新时间:2023-11-04 07:11:27 25 4
gpt4 key购买 nike

作为一名年轻的程序员,我一直在努力寻找我的技能的应用。

无论如何,我目前正在学习三角学,我们正在研究单位圆,从度数到坐标的转换公式是 (sinθ, cosθ)(据我所知)。

但是,我遇到的困难是我需要将值保留为分数。

基本上,我计划的算法是:

i = 0
while i < 360:
print(i, "=", calc(i))
i += 15

现在,calc 可以被赋予任何名称,并且将是一个返回 x 和 y 的坐标(可能作为元组)的函数,给定 x = sin θ 和 y = cos θ。

我遇到的问题是 Python 中的 sin 返回一个介于 -1 和 1 之间的 float ,但是,我需要找到一种方法让它返回一个分数。例如,在 this picture 中坐标为有理数。

我该怎么办?我应该编写自己的正弦和余弦函数吗?如果是,我应该怎么做?

最佳答案

看起来您需要第三方模块,例如 sympy :

>>> import sympy
>>> for i in range(0, 360, 15):
... print i, sympy.sin(sympy.Rational(i, 180) * sympy.pi)
...

0 0
15 sin(pi/12)
30 1/2
45 2**(1/2)/2
60 3**(1/2)/2
75 sin(5*pi/12)
90 1
105 sin(5*pi/12)
120 3**(1/2)/2
135 2**(1/2)/2
150 1/2
165 sin(pi/12)
180 0
195 -sin(pi/12)
210 -1/2
225 -2**(1/2)/2
240 -3**(1/2)/2
255 -sin(5*pi/12)
270 -1
285 -sin(5*pi/12)
300 -3**(1/2)/2
315 -2**(1/2)/2
330 -1/2
345 -sin(pi/12)

关于python - 使用 Python 创建一个单位圆计算器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8698564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com