作业:已知三边计算三角形角度
我知道我应该自己做作业,但我就是无法让我的作业按照我想要的方式运行:
from __future__ import division
import turtle
import math
def triangle(c,a,b,beta,gamma):
turtle.forward(c)
turtle.right(180+beta)
turtle.forward(a)
turtle.right(beta)
turtle.left(beta+gamma)
turtle.forward(b)
turtle.left(beta+gamma)
def general_abc(a,b,c):
alpha = math.degrees(math.acos(a/c))
print alpha
beta = math.degrees(math.asin(b/c))
print beta
general_abc(50,60,90)
这个函数 general_abc()
是用来计算三角形的角度,前提是我知道三条边的长度。我主要想了解背后的数学原理。虽然我在网上搜索了很多,但就是找不到合适的关键词。请告诉我我需要查阅的公式。
3 个回答
1
你可以使用余弦定理:c² = a² + b² - 2abcos(α)
1
老印第安酋长(我学到的):
SohCahToa
正弦 = 对边/斜边
余弦 = 邻边/斜边
正切 = 对边/邻边
7
我觉得你想要的其实是余弦定理。你提到的用acos和asin的方式是基于直角三角形的假设。