首页 > 解决方案 > 尝试在 Python 3 上执行正弦规则时出现数学域错误

问题描述

ASide1=float(input("Enter the value of side a: "))
BSide1=float(input("Enter the value of side b: "))
Beta1=float(input("Enter the value of angle b: "))

Answer=(math.asin(ASide1*(math.sin(Beta1)))/BSide1)


print(Answer)

答案的行返回了数学域错误,有人能帮我理解为什么吗?

标签: python-3.x

解决方案


for 的参数math.asin()应该在-1 到 1之间。正如您在此处看到的,如果您在任一侧超出此范围,您将获得Math domain error.

这种行为的原因是除了接受的范围之外没有任何asin()值。


推荐阅读