数学中国

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
查看: 742|回复: 10

已知垂心到三角形三个顶点的距离分别为x,y,z,求三角形面积表达式

[复制链接]
发表于 2025-2-11 22:37 | 显示全部楼层 |阅读模式
已知垂心到三角形三个顶点的距离分别为x,y,z,求三角形面积表达式.
 楼主| 发表于 2025-2-14 20:51 | 显示全部楼层
明着说,这个问题学霸都没解决,谁解决了谁就超过学霸了。
回复 支持 反对

使用道具 举报

发表于 2025-2-15 14:28 | 显示全部楼层
我不是学霸(自封欧阳锋——学习不择手段),用牛刀(三角函数)试试。

已知垂心到三角形三个顶点的距离分别为 x, y, z,  三角形面积 = S。

  1. Table[NSolve[{2*S == x*y*Sin[A] + z*x*Sin[B] + y*z*Sin[A + B],   ArcCos[x/k] + ArcCos[y/k] + ArcCos[z/k] == Pi,
  2. (k*Sin[A])^2 - y^2 - x^2 ==2 y*x*Cos[A], (k*Sin[B])^2 - z^2 - x^2 ==2 z*x*Cos[B],, 0 < A < Pi/2, 0 < B < Pi/2}, {A, B, S, k}], {x, 2, 9}, {y, 9, 9}, {z, 12, 12}]
复制代码


x, y, z 可以是任意数。
回复 支持 反对

使用道具 举报

发表于 2025-2-18 15:44 | 显示全部楼层
本帖最后由 天山草 于 2025-2-19 18:13 编辑

此问题: 当三角形的垂心 H 到各顶点 A、B、C 的距离 HA、HB、HC 已知时,三角形的面积一般会有两个不同的解。(只有当
三角形是直角三角形和正三角形时,才有唯一的一组解)。
一个解对应于垂心 H 在三角形内部,即三角形是锐角三角形。另一个解对应于垂心 H 在三角形外部,即三角形是钝角三角形。
例如,当 AH = 10;  BH = 304;   CH = 233 时:

当垂心在三角形内部时,内切圆半径 r1 = 79.5559441432387246080038093850909529598....,
三角形面积 S1 = 37343.024518395765606543583679.....。
当垂心在三角形外部时,内切圆半径 r2 =74.38391421452205059071852730250831985849....,
三角形面积 S2 = 33513.1200036001508458339373013.....。
计算依据是先由 AH、BH、CH 的值求内切圆的切线长,这需要解下面三个方程组:

然后就可算出三边长、内切圆半径和面积:
  1. Clear["Global`*"];
  2. AH = 10; BH = 304; CH = 233;
  3. NSolve[{AH ==
  4.    Sqrt[((tx + ty)^2 (ty + tz)^2 (tz + tx)^2)/(
  5.     4 (tx + ty + tz) tx ty tz) - (ty + tz)^2],
  6.   BH == Sqrt[((tx + ty)^2 (ty + tz)^2 (tz + tx)^2)/(
  7.     4 (tx + ty + tz) tx ty tz) - (tx + tz)^2],
  8.   CH == Sqrt[((tx + ty)^2 (ty + tz)^2 (tz + tx)^2)/(
  9.     4 (tx + ty + tz) tx ty tz) - (tx + ty)^2], tx > 0, ty > 0,
  10.   tz > 0}, {tx, ty, tz}, 100]
  11. tx = 81.63407970938620540008543908739976428224449715550794783729904527\
  12. 3527037569944412753411063367316531372718068726874846941510983453982794\
  13. 95;
  14. ty = 228.4758801575651015660326813149937171526588242844408945444372691\
  15. 8992422502378946589080015270073170395346335290806591911320506473366766\
  16. 289;
  17. tz = 159.2833069788355109738296572184545315203463619183596149742957495\
  18. 5114305697435545834999323635297901177574496197953839665363073763766461\
  19. 131;
  20. Print["三角形为锐角三角形、垂心在三角形内部时: "];
  21. Print["r1 = ", N[Sqrt[(tx ty tz)/(tx + ty + tz)], 100]];
  22. a = ty + tz; b = tx + tz; c = tx + ty;
  23. Print["a1 = ", N[a, 100]];
  24. Print["b1 = ", N[b, 100]];
  25. Print["c1 = ", N[c, 100]];
  26. p = (a + b + c)/2; S = Sqrt[p (p - a) (p - b) (p - c)];
  27. Print["S1 = ", N[S, 100]];
  28. Print["。。。。。。。。。。。。 "];
  29. tx = 72.44261717942226858346213302157042011860246243152941416270961739\
  30. 2938411267721257092182127996078849721263529346041375711199031476751841\
  31. 16;
  32. ty = 225.5012963534455573701516841081325088441317605491340060132027867\
  33. 7979742888640769875524215737071178928744194634990923114308643883215509\
  34. 344;
  35. tz = 152.5986581708587954437848918929719805276285144499044585310104605\
  36. 5819872142972840988073552089253324797395816393953623356677915300500641\
  37. 611;
  38. Print["三角形为钝角三角形、垂心在三角形外部时: "];
  39. Print["r2 = ", N[Sqrt[(tx ty tz)/(tx + ty + tz)], 100]];
  40. a = ty + tz; b = tx + tz; c = tx + ty;
  41. Print["a2 = ", N[a, 100]];
  42. Print["b2 = ", N[b, 100]];
  43. Print["c2 = ", N[c, 100]];
  44. p = (a + b + c)/2; S = Sqrt[p (p - a) (p - b) (p - c)];
  45. Print["S2 = ", N[S, 100]];
复制代码

目前尚未解决的问题是,方程组 ①、②、③ 的公式解还没有找到。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2025-2-18 17:15 | 显示全部楼层
4# 楼中公式 ①、②、③ 的证明:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2025-2-18 17:33 | 显示全部楼层
\(AH^2+a^2=BH^2+b^2=CH^2+c^2=4R^2\) 的证明:


此图摘自【几何瑰宝】第 2 版上册,第 107 页定理 5 的证明。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2025-2-18 18:04 | 显示全部楼层
本帖最后由 天山草 于 2025-2-20 08:49 编辑

设 tx、ty、tz 分别是 A、B、C 点到内切圆的切线长,AH、BH、CH 分别是 A、B、C 点到垂心的距离。
把 AH、BH、CH 作为已知量, tx、ty、tz 作为未知量,从上面知道,它们之间满足以下方程:
\(AH=\sqrt{\frac{(tx+ty)^2(ty+tz)^2(tz+tx)^2}{4(tx+ty+tz)tx ty tz}-(ty+tz)^2}\)
\(BH=\sqrt{\frac{(tx+ty)^2(ty+tz)^2(tz+tx)^2}{4(tx+ty+tz)tx ty tz}-(tx+tz)^2}\)
\(CH=\sqrt{\frac{(tx+ty)^2(ty+tz)^2(tz+tx)^2}{4(tx+ty+tz)tx ty tz}-(tx+ty)^2}\)

这个方程组通常有两组正解(对于直角三角形和正三角形,只有一组解),利用计算软件得到任意精度的数值解是没有问题的,
并且现在已经有了一种公式解,是从一个一元三次方程的解集中导出的。这个一元三次方程是【数学研发论坛】
的管理员 wayne 给出的,但是他没有给出推导过程。这个一元三次方程是(点击图面可看到放大图):


如何由上面这个一元三次方程的三个解中自动筛选掉不符合要求的多余解呢?见下面的程序:

  1. Clear["Global`*"];(*三个根中最多只有一至两个根有用,下面是如何自动筛选出正确解的程序*)
  2. AH = 10; BH = 304; CH = 233;(*锐角三角形*)
  3. AH = 0; BH = 3; CH = 4;(*直角三角形*)
  4. AH = BH = CH = 5 Tan[\[Pi]/3] - 5 Tan[\[Pi]/6];(*正三角形*)
  5. AH = 5 Tan[\[Pi]/3] - 5 Tan[\[Pi]/6]; BH = 10; CH = 10;(*钝角三角形*)

  6. u = AH^2 + BH^2 + CH^2; v = AH^2 BH^2 CH^2;
  7. w1 = Power[-(u^3/27) + 2 v -
  8.   Sqrt[(2 v - u^3/27)^2 - u^6/729], (3)^-1]; w2 = Power[-(u^3/27) +
  9.   2 v + Sqrt[(2 v - u^3/27)^2 - u^6/729], (3)^-1];
  10. t1 = (2 u)/3 + w1 + w2;
  11. t2 = 1/6 (4 u + 3 I (I + Sqrt[3]) w1 - 3 I (-I + Sqrt[3]) w2);

  12. If[N[Re[t1] > AH^2 && Re[t1] > BH^2 && Re[t1] > CH^2],
  13.   Print["a1 = ", Sqrt[N[Re[t1], 100] - AH^2]] &&
  14.    Print["b1 = ", Sqrt[N[Re[t1], 100] - BH^2]] &&
  15.    Print["c1 = ", Sqrt[N[Re[t1], 100] - CH^2]]];
  16. If[N[Re[t1] > AH^2 && Re[t1] > BH^2 && Re[t1] > CH^2],
  17.   a1 = Sqrt[N[Re[t1], 100] - AH^2] ;
  18.   b1 = Sqrt[N[Re[t1], 100] - BH^2]; c1 = Sqrt[N[Re[t1], 100] - CH^2];
  19.   p1 = (a1 + b1 + c1)/2;
  20.   Print["S1 = ", Sqrt[p1 (p1 - a1) (p1 - b1) (p1 - c1)] ]];
  21. Print["。。。。。。。。。。。。。。 "];
  22. If[N[Re[t2] > AH^2 && Re[t2] > BH^2 && Re[t2] > CH^2],
  23.   Print["a2 = ", Sqrt[N[Re[t2], 100] - AH^2]] &&
  24.    Print["b2 = ", Sqrt[N[Re[t2], 100] - BH^2]] &&
  25.    Print["c2 = ", Sqrt[N[Re[t2], 100] - CH^2]]];
  26. If[N[Re[t2] > AH^2 && Re[t2] > BH^2 && Re[t2] > CH^2],
  27.   a2 = Sqrt[N[Re[t2], 100] - AH^2] ;
  28.   b2 = Sqrt[N[Re[t2], 100] - BH^2]; c2 = Sqrt[N[Re[t2], 100] - CH^2];
  29.   p2 = (a2 + b2 + c2)/2;
  30.   Print["S2 = ", Sqrt[p2 (p2 - a2) (p2 - b2) (p2 - c2)] ]];
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2025-2-19 09:33 | 显示全部楼层
本帖最后由 天山草 于 2025-2-19 21:44 编辑

根据 7# 楼的程序,对于直角三角形和正三角形,方程都是只有一组解。具体例子如下:
(1)边长为 3、4、5 的直角三角形。已知 AH=0、BH=3、CH=4。按以上方法算得 r1=r2=1,a1=a2=5,b1=b2=3,c1=c2=4。S1=S2=6。
(2)边长为 10、10、10 的正三角形。已知 AH=BH=CH=5.7735026918962576450914878.....。按以上方法算得 r1=r2=2.886751345948128822545743902509787278238008756350634380093011632419888361514666728468576977928747626.....,
a1=a2=10,b1=b2=10,c1=c2=10。S1=S2=43.30127018922193233818615853764680917357013134525951570139517448629832542272000092702865466893121439.....。

对于非正三角形的一般锐角三角形,目前发现都是有两组解,例如
对于  AH = 10;  BH = 304;  CH = 233  的锐角三角形,两组解答为 a1 = 387.7591871.....,b1 = 240.917386688.....,c1 = 310.10995986695.....,S1 = 37343.024518395765.....。
a2 = 378.099954524......, b2 =225.0412753502810.....,c2 =297.94391353286.....,S2 =33513.120003600150......。


对于钝角三角形,目前发现也都是有两组解,例如
对于 AH = 5 tan60° - 5 tan30°;   BH = 10;   CH = 10 的钝角三角形,两组解答为 a1 = 16.3299316.....,b1 = 14.1421356.....,c1 = 14.1421356.....,S1 = 94.2809041......。
a2 = 10, b2 = 5.77350269189.....,c2 = 5.77350269189.....,S2 = 14.4337567......。





回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-2-19 21:17 | 显示全部楼层
天山草 发表于 2025-2-19 09:33
对于直角三角形和正三角形,方程都是只有一组解。具体例子如下:
(1)边长为 3、4、5 的直角三角形。已知 ...

不一定非要求内切圆半径嘛,试试求外接圆半径,同样可以算得面积。

点评

现在已经不求内切圆半径和外接圆半径了,是求三边长然后求面积。并且已有公式解,不必解方程了。见 7# 楼的公式。  发表于 2025-2-19 21:29
回复 支持 反对

使用道具 举报

发表于 2025-2-20 19:34 | 显示全部楼层
本帖最后由 天山草 于 2025-2-20 19:54 编辑

下面这个程序更简单,它是先由 AH、BH、CH 按方程
\( (4 R^3 - (AH^2 + BH^2 + CH^2) R +  AH BH CH) (4 R^3 - (AH^2 + BH^2 + CH^2) R - AH BH CH) = 0\)
求得三角形的外接圆半径后,再由  \( a =\sqrt{4 R^2 - AH^2};  b =\sqrt{4 R^2 - BH^2}; c =\sqrt{4 R^2 - CH^2};\)
求出各边长, 最后由  \( S =\frac{a b c }{4R}\) 求出面积。
上面那个六次方程的六个根中,由于条件 R > AH/2,R > BH/2,R > CH/2 的限制,最多只有两个根能用。这两个根
的公式表达已在下面的程序中给出。程序可自动判定各种形状的三角形有一个解还是两个解。

  1. Clear["Global`*"];
  2. AH = 10; BH = 304; CH = 233;(*锐角三角形*)
  3. AH = 0; BH = 3; CH = 4;(*直角三角形*)
  4. AH = BH = CH = 5 Tan[\[Pi]/3] - 5 Tan[\[Pi]/6];(*正三角形*)
  5. AH = 5 Tan[\[Pi]/3] - 5 Tan[\[Pi]/6]; BH = 10; CH = 10;(*钝角三角形*)
  6. AH = 10; BH = 304; CH = 233;(*锐角三角形*)
  7. u = (AH^2 + BH^2 + CH^2)^3; v = AH BH CH;
  8. R1 = Power[3, (
  9.    3)^-1] (Power[-Sqrt[3] Sqrt[27 v^2 - u] - 9 v, (3)^-1] + Power[
  10.       Sqrt[3] Sqrt[27 v^2 - u] - 9 v, (3)^-1])/6;
  11. R2 = Power[3, (
  12.    3)^-1] (Power[-Sqrt[3] Sqrt[27 v^2 - u] + 9 v, (3)^-1] + Power[
  13.       Sqrt[3] Sqrt[27 v^2 - u] + 9 v, (3)^-1])/6;
  14. If[N[Re[R1] > AH/2 && Re[R1] > BH/2 && Re[R1] > CH/2],
  15.   a1 = Sqrt[ 4 R1^2 - AH^2]; b1 = Sqrt[ 4 R1^2 - BH^2];
  16.   c1 = Sqrt[ 4 R1^2 - CH^2]; Print["R = ", N[Re[R1], 100]] ];
  17. If[N[Re[R1] > AH/2 && Re[R1] > BH/2 && Re[R1] > CH/2],
  18.   Print["S = ", N[Re[(a1 b1 c1)/(4 R1)], 100]]];
  19. If[N[Re[R2] > AH/2 && Re[R2] > BH/2 && Re[R2] > CH/2],
  20.   a2 = Sqrt[ 4 R2^2 - AH^2]; b2 = Sqrt[ 4 R2^2 - BH^2];
  21.   c2 = Sqrt[ 4 R2^2 - CH^2];
  22.   If[R2 == R1, , Print["R = ", N[Re[R2], 100]] ]];
  23. If[N[Re[R2] > AH/2 && Re[R2] > BH/2 && Re[R2] > CH/2],
  24.   If[R2 == R1, , Print["S = ", N[Re[(a2 b2 c2)/(4 R2)], 100 ]]]];
复制代码


例如对于锐角三角形  AH = 10; BH = 304; CH = 233,程序给出的计算结果是:
R = 189.1160857854779494092814726974916801415074861313353498896910912676648062057845971166164395417150437
S = 33513.12000360015084583393730130765683776342204411502238860909034900329439819384609646426174249196155
R = 193.9440558567612753919961906149090470401960145201871603411485430307116457627891307131652349714083547
S = 37343.02451839576560654358367901796739626253672899795611621417727102363143644715094548601358734054778
共有两个解。
又如对于直角三角形 AH = 0; BH = 3; CH = 4,程序给出的计算结果是:
R = 2.500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
S = 6.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
只有一个解。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|数学中国 ( 京ICP备05040119号 )

GMT+8, 2025-6-17 11:41 , Processed in 0.111837 second(s), 17 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表