Пётр Земсков старомоден Ч 2
http://proza.ru/2024/09/15/1136
Один, мягко говоря, доброжелатель написал саркастическое письмо, в котором ярко выделяется абзац:
"Вы, уважаемый математик, со своим Монте Карло далеко не уедете, ибо миллионы циклов будут вечно крутиться в поисках уже такой новой задачи: пусть треугольник АВС имеет площадь х=36 и нужно найти все варианты, у которых параметры, что на чертеже, - положительные и целочисленные".
Этот доброжелатель меня, честно говоря, сильно рассмешил. Потому что в такой постановке задача легче оригинала в десятки раз. Текст проги:
n=140
for s3=1 to n
for s2=s3 to n
for s1=s2 to n
for t=2 to n
y=2*s3/t
w=2*s2/(y+t)
v=2*s1/y-w
x1=(v+w)*(y+t)-s1-s2-s3
a=sqrt(t^2+v^2)
b=sqrt(w^2+(t+y)^2)
c=sqrt(y^2+(v+w)^2)
x2=1/4*sqrt((a+b+c)*(a+b-c)*(a-b+c)*(-a+b+c))
d=abs(x1-x2)
if d<1/10^10 then
if w=int(w) then
if x1=36 then
N=N+1
print N using "##",x1 using "##",y using "##";
print t using "##",v using "##",w using "###";
print s1 using "###",s2 using "###",s3 using "###";
print y+t using "###",v+w using "###"
fi:fi:fi
next t
next s1
next s2
next s3
Тут можно было бы принять n=60 и ответ был бы точно таким же. Распечатка тогда бы прошла за считанные секунды. Я же принял "n" более чем в два раза больше, чтобы удостовериться в отсутствии других вариантов.
За новую постановку задачи говорю критику искренне "спасибо". И вряд ли хваленый Пётр Земсков с такой постановкой вообще бы справился.
19 сентября 2024 г.
Свидетельство о публикации №224091901493