Треугольник и внутри крест

Четырехугольник с крестом внутри я уже рассмотрел. Но оказалось, что пару лет назад то же делал и для треугольника! Только совсем об этом забыл. Хорошо, что все на математическом форуме сохранилось. Просто копирую оттуда.  Схема показана на рисунке. Но тут я не задавался координатами вершин, а сразу принимал уравнения прямых:

y1=a1*x+b1 ; y2=-1/a1*x+b2 ; y3=a3*x ; y4=a4*x+b4

 Задача состояла лишь в нахождении пар коэффициентов каждой прямой. В этом случае удалось составить явные формулы площадей четырех фигур: S1, S2, S3, S4. Коэффициент при иксе одной из  прямых крестовины y2 равен: a2=-1/a1. Как и полагается ортогональной прямой.

В результата счета были получены следующие данные:
S1=S2=S3=S4=2.5
Координаты центра крестовины: xM=2.0004 ; yM=1.52446
Точность результатов 0.000000000006

Программа на Yabasic:

rem Прорамма нахождения центра креста внутри треугольника.
rem Крест делит треугольник на 4 равновеликие фигуры.
s=10^20:z=0.001
a10=3:b10=-5:b20=2
a3=5/3:a4=-5:b4=20
yb=a3*b4/(a3-a4):xa=-b4/a4:ss=1/2*xa*yb
for j=1 to 5000000
a1=a10*(1+z*(ran()-.5))
b1=b10*(1+z*(ran()-.5))
b2=b20*(1+z*(ran()-.5))
s1=1/2*(a1^3*b2^2*(a3-a1)-b1*(a1*a3+1)*(2*a1^2*b2+b1))
s1=s1/(a1*(a1^2+1)*(a1*a3+1))
s2=1/4*(a1*(a3*(b2-b4)-a4*b2)-b4)^2
s2=s2/((a4-a3)*(a1*a3+1)*(a1*a4+1))
s3=1/2*(b4*(a1^2+1)-b1*(a1*a4+1)+a1*b2*(a4-a1))^2
s3=s3/((a1^2+1)*(a4-a1)*(a1*a4+1))
s4=1/4*(a1*b4-a4*b1)^2/(a1*a4*(a4-a1))
F=abs(s1-ss/4)+abs(s2-ss/4)
F=F+abs(s3-ss/4)+abs(s4-ss/4)
if F<=s then s=F
xm=a1*(b2-b1)/(a1^2+1)
ym=a1*xm+b1
print a1,b1,b2,xm,ym,s1,s2,s3,s4,F
a10=a1:b10=b1:b20=b2
if F<=0.001 then z=1/10^4:fi
if F<=1/10^5 then z=1/10^9:fi
fi
next j

5 сентября 2021 г.


Рецензии