在Python中求长度C的余弦定律[关闭]。

问题描述 投票:0回答:1
import math

def len_side(a,b,C):
    c_rad = math.radians(C)
    c = math.acos(c_rad)
    print(c)
    c_sq = c**2
    c_sq = (a**2) + (b**2) - (2*a*b*(math.cos(c)))
    if C > 360:
        print(False)
    else:
        return c

这段代码应该找到边c的长度,但没有返回预期的值。

python math trigonometry
1个回答
1
投票

我想你在把余弦规则公式翻译成代码时可能犯了一个错误,这行是 c = math.acos(c_rad) 我觉得有点奇怪 c^2 = a^2 + b^2 - a*b*cos(C)

import math


def len_side(a, b, C):
    C_rad = math.radians(C)
    c_sq = a ** 2 + b ** 2 - 2 * a * b * math.cos(C_rad)
    c = math.sqrt(c_sq)
    return c
© www.soinside.com 2019 - 2024. All rights reserved.