Задача Ивана Математика Ч. 1
https://www.youtube.com/watch?v=edCszVTWtXQ&t=257s
Опять страшно частный случай и найти надо было всего лишь площадь квадрата.
Решение долгое, нудное и для практики малозначимое. Поэтому я значительно шире все рассмотрел.
Итак, имеется квадрат ABCD с неизвестной стороной k. Внутри него находится такая точка M(x,y) при которой AM=a; BM=b и CM=c. В исполнении Земскова заданы a=1, b=2 и c=3. Я попытался в общем виде решить эту задачу и получить нужную формулу для площади S=k^2. Но это оказалось слишком сложным желанием.
Тогда пришла идея найти простое численное решение задачи и в результате получить координаты точки M, значения k и S. Для этого выбрал метод Монте Карло. Программу на языке Yabasic сверстал буквально за пять с половиной минут. Вот ее текст:
a=1:b=2:c=3
x0=1:y0=1:k0=3
s1=10^10:z=0.02
for i=1 to 5000000
x=x0+z*(ran()-.5)
y=y0+z*(ran()-.5)
k=k0+z*(ran()-.5)
d1=abs(a^2-x^2-y^2)
d2=abs(b^2-x^2-(k-y)^2)
d3=abs(c^2-(k-x)^2-(k-y)^2)
s=d1+d2+d3
if s<s1 then
print x,y,k,k^2,s
x0=x:y0=y:k0=k:s1=s
xk=x:yk=y:kk=k
if s<0.002 then z= 0.0001:fi
if s<0.00001 then z= 0.000001:fi
if s<0.0000001 then
z= 0.0000000001:fi
fi
next i
a=sqrt(xk^2+yk^2)
b=sqrt(xk^2+(kk-yk)^2)
c=sqrt((kk-xk)^2+(kk-yk)^2)
S=kk^2
print a,b,c,xk,yk,kk,S
Это как раз то решение, которое дал Земсков.
Ответ получился тот же: S=5+2*sqrt(2), только численный и с большой точностью (двенадцать знаков после запятой!).
Координаты точки M(0.50545 , 0.862856), сторона квадрата k = 2.79793.
На рисунке я также показываю тестовую задачу и найденные результаты.
Программа работает безупречно и довольно быстро, хотя и гонит аж пять миллионов циклов!
Но с таким же успехом можно численно решать используя Вольфрам Альфа. Это даже лучше, так как он дает и ответы в радикалах. Так задача Земскова записывается в окошке сервиса:
solve(1^2=x^2+y^2&&
2^2=x^2+(k-y)^2&&
3^2=(k-x)^2+(k-y)^2,[x,y,k])
( писать одной строкой!). В самом конце рисунка в рамочке все искомые параметры наглядно показаны.
Именно так пора обучать школьников и студентов для быстрого получения информации при рассмотрении любой, даже невероятно сложной задачи!
31 августа 2022 г.
Свидетельство о публикации №222083101295
Если бы вы просто вспомнили 6 класс, или когда там Пифагора проходят и тупо повторили за Земсковым его рассуждения, подставив вместо 2, 3, 1 соответственно a, b, c, то получили бы 2*S = b^2 + (sqrt(2)*a + c)^2. За полторы минуты.
Какой Монте-Карло? Зачем здесь yabasic?
Александр Баранов 8 01.09.2022 12:34 Заявить о нарушении
Георгий Александров 01.09.2022 15:38 Заявить о нарушении
На практике это значит, что b >= a >= c. Т.е. применять формулу надо так: пусть даны расстояния (ваш пример) 4, 5, 7.
Учитывая неравенство выше, a = 5, b = 7, c= 4.
Соответственно, площадь квадрата равна 115\2 + 20*sqrt(2).
Александр Баранов 8 01.09.2022 17:18 Заявить о нарушении
Мое решение таким недостатком не страдает. У меня все четко. Ищите у себя ошибку!
Георгий Александров 02.09.2022 10:18 Заявить о нарушении