三角函数:如何在不使用“math”模块的情况下编写正弦和余弦函数的代码?

Bha*_*dav 0 python trigonometry python-3.x

我一直在为我为 Discord Bot 制作的模块编写代码。我一直在尝试不使用任何模块,因为它对导入东西没有帮助。所以我想我应该自己为他们两个写代码。

这里的问题是我真的不知道我们如何制作它们。我在网络上的任何地方都找不到它们,因为到处都只看到使用了math我不想使用的模块。

我不知道如何与他们合作,所以我需要一些帮助。

谢谢你!:)

Nem*_*a02 5

使用泰勒展开,您可以获得达到所需精度的近似值。

http://hyperphysics.phy-astr.gsu.edu/hbase/tayser.html

def pow(base, exponent):
    return base ** exponent

def faktorial(n):
    value = float(1)
    for i in range(1, n+1):
        value = value * i
    return value

def cos(x):
    x = x * 3.14/180
    value = 1
    sign = -1
    n = 200 # precision
    i = 2
    while i < n:
        value = value + (pow(x, i)/faktorial(i) * sign)
        i = i + 2
        sign = sign * -1
    
    return value

def sin(x):
    x = x * 3.14/180
    value = x
    sign = -1
    n = 200 # precision
    i = 3
    while i < n:
        value = value + (pow(x, i)/faktorial(i) * sign)
        i = i + 2
        sign = sign * -1
    return value
Run Code Online (Sandbox Code Playgroud)