sin.jl sinc=sin(a+b)*sina...

发布时间 :2023-03-26 21:15:56
正弦定理通用解三角形问题与角格点

三角形几何解题很多纠结于各种几何技巧。其实大多数用正弦定理很简单的就通用的解决了。
还是喜欢用三角函数通用的解出这类题所有不同角度的数据办法。 不同的数据,画辅助线的方法不通用。 2011年写的文章 解析几何的精髓 网页链接 后面一系列的这道题的不同数据的题,都可以简单的代入数据,代数三角化简,得到答案。

比如这题。这种题其实可以简单的用正弦定理解,这题数据比较简单口算就行。 左边三角形边角边已知,角度确定唯一所求角度锐角。 sin(80 °-x)/sinx=sin80°*cotx-cos80°
=sin80°/sin40 °=2cos40 °=2sin50 °=sin(80 °-30 °)/sin30 ° =sin80°cos30°-cos80°

所以cotx=cot30°

x=30 °,满足要求。

用正弦定理,简单的几个角度关系有:
sin(a+b)*sina/sinb=sinc
d=180°-a-b-c

写个Julia 程序简单的搜索一下0.1°整数倍的角格点,排除掉简单的AB=BD或者AD=BD的情形。

#sin.jl sinc=sin(a+b)*sina/sinb

function mysin()

little=0.00000001
num=1800

for i in 1:num-1

for j in 1:num-i-1

x=sin((i+j)*pi/num)*sin(i*pi/num)/sin((j*pi)/num)
# println("\r\nok!!!i=",i,",j=",j,",x=",x,"\r\n")
if(x>1) continue
end

c=asin(x)/pi*num

if(abs(floor(c+little)-c)<=little)
if(i!=j && abs(i-c)>=0.0001 && i+j+c<num)
println("\r\nok!!!a=",i,",b=",j,",c=",c,"\r\n")
end

end
end

end

end

mysin()

搜索得到结果:

ok!!!a=180,b=120,c=479.9999999999999

ok!!!a=180,b=1320,c=119.99999999999993

ok!!!a=200,b=100,c=799.9999999999994

ok!!!a=225,b=450,c=300.00000000000006

ok!!!a=300,b=240,c=840.0000000000005

ok!!!a=300,b=500,c=400.00000000000006
本题的数据结果,30°、50°、40°、
180°-30°-50°-40°=60°。

ok!!!a=300,b=960,c=240.0

ok!!!a=300,b=1100,c=200.0

ok!!!a=300,b=1320,c=120.00000000000014

ok!!!a=400,b=1100,c=199.99999999999994

ok!!!a=450,b=900,c=300.00000000000006

ok!!!a=540,b=960,c=240.0

这样就可以用这些数据出题了,估计有些数据单纯的几何也不是太方便。这题好像还看到这个30、96、24、30数据的。

网页链接

以前比较火的这个难度较高的,有各种数据。cotE=HC/DH=(AC-AH)/DH=AC/DH-AH/DH=sin(C+D)*sin(180°-A-B-C)/(sinC*sin(180°-B-C-D))/sinA-cotA

这个有4个已知角度求一个角度,已经有人列出过这个问题的角格点。有空再写一个Julia程序跑一跑这个等式的角格点出来。

热门评论

大兔子袁哥
大兔子袁哥

=sin80°cot30°-cos80° 所以cotx=cot30°

老张头2024
老张头2024

[赞][good]我老是折腾所谓的“纯几何”解法,其实是一种病[允悲]

爆米鳄梨豆浆
爆米鳄梨豆浆

上午还在想,最后x等于30是凑出来的,这次加上中间步骤 把2换成1/sin30,一下就理解了。

今日热门