Задача якобы Антона Ивановича Деникина 1

Генералу Деникину приписывают интересную задачу: якобы он нашел среднюю длину хорды окружности. В математическом форуме развернулась нешуточная баталия насчет решения и ответа. Я излагаю здесь свой окончательный вариант. Идея довольно проста: случайно выбираю на окружности две точки и определяю между ними расстояние. Это будет случайная хорда. Таких вычислений произвожу пятьсот миллионов. Сумму всех хорд делю на пятьсот миллионов и получаю среднюю длину хорды. Делаю это всего при радиусе R=1. Ответ с большой точностью получился равным 4/pi. Значит, в общем случае  l_ср=4R/pi.

Программа расчета методом Монте Карло:

n=5*10^8
N=20
dim l(1000000),x1(10000),x2(10000)
for i=1 to n
a1=ran()*2*pi
x1=cos(a1):y1=sin(a1)
a2=ran()*2*pi
x2=cos(a2):y2=sin(a2)
l=sqrt((x1-x2)^2+(y1-y2)^2)
L=L+l
s=s+1
for j=1 to N
if l>2*(j-1)/N and l<=2*j/N then l(j)=l(j)+1
fi
next j
next i
print L/s using "##.########",s
for j=1 to N
x1(j)=2*(j-1)/N:x2(j)=2*j/N
print x1(j) using "##.####",x2(j) using "##.####";
print l(j)/s*100 using "###.####"
sum=sum+l(j)/s*100
next j
print
print sum

Гистограмма получилась такой, как я и ожидал: большинство хорд тяготеет к диаметру окружности.

3 ноября 2021 г.


Рецензии