2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу 1, 2  След.
 
 Вычислить пи в школе
Сообщение02.04.2023, 15:24 
В соседней теме предложили замечательную идею не давать школьникам приближенное значение пи "с потолка", а показать, как можно вычислить его приближенно с помощью метода Архимеда, вписывая и описывая многоугольники.

Я думаю, с помощью простейших средств можно рассчитать шестиугольник. А можно ли, не усложняя расчеты, взять большее количество сторон и получить разумное приближение пи? Самым простым мне видится использовать теорему косинусов, а значения косинусов находить по калькулятору, который есть на любом смартфоне. Но для этого школьникам надо знать косинус. А есть ли еще более простые методы?

-- 02.04.2023, 15:37 --

Можно еще линейкой строить ломаные. Хлопотно, но можно соревноваться, кто получит наилучшее приближение :-) Как математический метод это бессодержательно, но в голове хотя бы останется, что так можно делать.

Можно пойти через площади и $S = \pi r^2.$ Рисовать окружность и многоугольники на клетчатой бумаге, а затем считать площади по клеточкам. Это доступно даже в начальной школе. Но мне не нравится, что здесь пи вычисляем через площадь. Для меня всегда определением пи было отношение длины окружности к диаметру.

-- 02.04.2023, 15:51 --

Я тут глянул, на dxdy было много тем по вычислению пи, но все они в основном про ряды и продвинутые методы. В этой теме предложили Монте-Карло для вычисления площадей. Тоже очень доступно. Сейчас такое на компьютере симулировать легко.

 
 
 
 Re: Вычислить пи в школе
Сообщение02.04.2023, 16:24 
Mirage_Pick в сообщении #1587939 писал(а):
можно ли, не усложняя расчеты, взять большее количество сторон
Покрутил в уме — показалось, что частный случай удвоения сторон должен бы решаться без привлечения синусов и косинусов. Попробуйте, увы, я в рисовании чертежей не силён.

 
 
 
 Re: Вычислить пи в школе
Сообщение02.04.2023, 16:25 
Mirage_Pick в сообщении #1587939 писал(а):
Самым простым мне видится использовать теорему косинусов, а значения косинусов находить по калькулятору, который
при вычислении cos уже основывается на значении пи.

Mirage_Pick в сообщении #1587939 писал(а):
Для меня всегда определением пи было отношение длины окружности к диаметру.


Ну да, взять цилиндр, намотать на него веревку и измерить намотанный кусок. Заказать пиццы разного диаметра, взвесить их все и построить регрессию веса пиццы на квадрат ее радиуса :mrgreen:

 
 
 
 Re: Вычислить пи в школе
Сообщение02.04.2023, 16:59 
ozheredov в сообщении #1587943 писал(а):
Ну да, взять цилиндр, намотать на него веревку и измерить намотанный кусок.

Ну конечно! Еще проще покатать цилиндр по столу и измерять длину. Чем больше оборотов, тем точнее. Я помню даже задачку из школы по физике, где точка циклоиду описывает.

 
 
 
 Re: Вычислить пи в школе
Сообщение02.04.2023, 17:09 
Аватара пользователя
ozheredov в сообщении #1587943 писал(а):
при вычислении cos уже основывается на значении пи.
Нет, если угол задавать в градусах.

 
 
 
 Re: Вычислить пи в школе
Сообщение02.04.2023, 17:12 
ozheredov в сообщении #1587943 писал(а):
при вычислении cos уже основывается на значении пи.

Можно cos через ряд определить. У Эдмунда Ландау есть книга по матанализу, где он последовательно это делает.

 
 
 
 Re: Вычислить пи в школе
Сообщение02.04.2023, 17:17 
Mirage_Pick в сообщении #1587939 писал(а):
а показать, как можно вычислить его приближенно с помощью метода Архимеда, вписывая и описывая многоугольники.
Обычно и дают через вписанный многоугольник.
Через вписанный оценка снизу, через описанный оценка сверху.
Можно начать с квадрата и удваивать количество вершин, что быстро увеличивает точность. Нужно только угол пополам делить.

 
 
 
 Re: Вычислить пи в школе
Сообщение02.04.2023, 17:43 
Периметр правильного n-угольника, описанного вокруг окружности с радиусом 1: $\hat P_n = 2 n \tg(180/n).$
Периметр правильного n-угольника, вписанного в окружность с радиусом 1: $ P_n = 2 n \sin(180/n).$
Тригонометрические функции к моменту получения формулы для длины окружности уже введены. Но нужно смотреть программу: получены ли формулы $\sin \varphi /2 = \sqrt {\frac {1- \cos \varphi } 2}$ и $\cos \varphi /2 = \sqrt {\frac {1+ \cos \varphi } 2}$ («У меня это было в алгебре и началах анализа. 9 класс»).

$\hat P_6 = 4 \sqrt 3$, $P_6 = 6$. Следовательно, $ 3 \le \pi \le 2 \sqrt 3$, или $ 3 \le \pi \le 3.5$.
$\hat P_{12} = 24 (2 - \sqrt 3)$, $P_{12} = 6 \sqrt 2 (\sqrt 3 - 1)$, $ 3.1 \le \pi \le 3.22$.

Для $n=24$ получим оценку $ 3.13 \le \pi \le 3.16$.

upd Архимед Сочинения, М, 1962, «Измерение круга» (djvu)
Цитата:
Итак, периметр круга будет более чем в три раза больше диаметра с избытком меньшим седьмой части, но большим $\frac {10}{71}$
У Архимеда углы поменьше, но и так идея понятна.

 
 
 
 Re: Вычислить пи в школе
Сообщение02.04.2023, 17:54 
Аватара пользователя
Пифагор?
На очередном шаге есть n-угольник, с длиной стороны $l_n$ и периметром $P_n=n l_n$
Опускаем высоту на какую-либо из сторон, находим её длину (Пифагор раз!) и разность её длины с радиусом (единичным?), строим треугольник, один из катетов которого - половина стороны n-угольника, вторая - продолжение высоты до окружности, гипотенуза будет длиной стороны 2n-угольника (Пифагор два!).
Ещё, конечно, можно алгоритм Гаусса-Лежандра им показать (он же Саламина-Брента)
https://en.wikipedia.org/wiki/Gauss%E2% ... _algorithm
Впечатлит, но без дополнительных знаний выглядеть будет, как эффектный фокус и только.

 
 
 
 Re: Вычислить пи в школе
Сообщение03.04.2023, 05:26 
Аватара пользователя
Евгений Машеров в сообщении #1587965 писал(а):
Пифагор?
На очередном шаге есть n-угольник, с длиной стороны $l_n$ и периметром $P_n=n l_n$
Опускаем высоту на какую-либо из сторон, находим её длину (Пифагор раз!) и разность её длины с радиусом (единичным?), строим треугольник, один из катетов которого - половина стороны n-угольника, вторая - продолжение высоты до окружности, гипотенуза будет длиной стороны 2n-угольника (Пифагор два!).
Для полупериметра (чтобы сразу получать приближения $\pi$, а не $2\pi$) такой подход даёт формулу
$P_{2n}=\sqrt{2n}\cdot \sqrt{n-\sqrt{n^2-P_n^2}}$
Начинать нужно с $P_2=2$. Для типа double удаётся получить восемь верных десятичных знаков в дробной части на 14-м шаге. Правда, потом начинается неустойчивость, которую школьники видеть не должны.

 
 
 
 Re: Вычислить пи в школе
Сообщение03.04.2023, 06:09 
Аватара пользователя
Можно и с трёх начинать, с вписанного шестиугольника, а не описанного квадрата. Можно аналогичную процедуру для описанного и вписанного многоугольников развить, чтобы видеть, как "сужается вилка".
Ну и 14 разрядов - это машинная точность. Можно показать потерю точности, и связанные с этим ограничения численных методов, можно поиграть с типами чисел или с арифметикой многократной точности (но это уже курс информатики, или кружковые занятия, но не основной курс геометрии)

 
 
 
 Re: Вычислить пи в школе
Сообщение03.04.2023, 06:24 
$$a_1 = \cos \frac{\pi}{2} = 0$$
$$a_{n+1}=\cos\frac{\pi}{2^{n+1}}=\sqrt\frac{a_n+1}{2}$$
$$b_n=2^n \sqrt{1-a_n^2}$$
$$b_n \to \pi$$
$b_n$ - это оценка снизу.
Оценка сверху будет: $$c_n=\frac{b_n}{a_n}$$

 
 
 
 Re: Вычислить пи в школе
Сообщение03.04.2023, 06:42 
zykov, вбил в Python. С $n=14$ начинается неустойчивость. Лучшее приближение $b_{15} = 3.141592645.$

(Значения a, b при n=1-30)

0.000000000, 2.000000000 0
0.707106781, 2.828427125 1
0.923879533, 3.061467459 2
0.980785280, 3.121445152 3
0.995184727, 3.136548491 4
0.998795456, 3.140331157 5
0.999698819, 3.141277251 6
0.999924702, 3.141513801 7
0.999981175, 3.141572940 8
0.999995294, 3.141587725 9
0.999998823, 3.141591422 10
0.999999706, 3.141592346 11
0.999999926, 3.141592575 12
0.999999982, 3.141592641 13
0.999999995, 3.141592645 14
0.999999999, 3.141592607 15
1.000000000, 3.141592911 16
1.000000000, 3.141594125 17
1.000000000, 3.141596554 18
1.000000000, 3.141596554 19
1.000000000, 3.141674265 20
1.000000000, 3.141829682 21
1.000000000, 3.142451272 22
1.000000000, 3.142451272 23
1.000000000, 3.162277660 24
1.000000000, 3.162277660 25
1.000000000, 3.464101615 26
1.000000000, 4.000000000 27
1.000000000, 0.000000000 28
1.000000000, 0.000000000 29
...

 
 
 
 Re: Вычислить пи в школе
Сообщение03.04.2023, 14:03 
Mirage_Pick
Так считайте не машинные числа double, а символьно (например в wxMaxima). Тогда можно хоть 100 знаков получить.

(Оффтоп)

Снизу и сверху:
Код:
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170678
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170682
Maxima код:
Код:
a:0;k:2;for kk:1 thru 166 do (a:sqrt((a+1)/2),k:k*2);(p:k*sqrt(1-a^2));
fpprec:210;
bfloat([p,p/a, p-p/a]);

 
 
 
 Re: Вычислить пи в школе
Сообщение04.04.2023, 16:31 
Аватара пользователя
svv в сообщении #1588045 писал(а):
Для полупериметра (чтобы сразу получать приближения $\pi$, а не $2\pi$) такой подход даёт формулу
$P_{2n}=\sqrt{2n}\cdot \sqrt{n-\sqrt{n^2-P_n^2}}$


А вот если домножить (ну и поделить) выражение под корнем на $n+\sqrt{n^2-P_n^2}$ и немного сократить, получим растущую точность до 24 шага, а затем стабилизацию на погрешности порядка $10^{-16}$

 
 
 [ Сообщений: 18 ]  На страницу 1, 2  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group