Эта
статья служит продолжением, но, возможно, не завершением
темы вычисления числа пи, начатой в №8 2001 статьей
"Моделируя жизнь" и продолженной в №3
2002 статей "Пиратская тропинка к пи",
причем в обеих статьях речь шла об экзотических
проявлениях этого удивительного числа. В первой
статье, напомним, оно вычислялось с помощью теории
вероятности бросанием так называемой "Иглы
Бюффона", а во второй с помощью соотношений
взаимно простых чисел, причем обе статьи сопровождались
популярной экскурсией в теорию вероятностей и
теорию простых чисел. Те, кто не успел достать
бумажные номера журналов, могут найти эти статьи
на http://www.hardnsoft.ru/magazine.php?issue=86&article=18
и на www.arbuz.narod.ru/z_pi.html . А еще путешествующие
по Сети любители математики могут встретиться
с многочисленными энтузиастами числа Пи, выставляющими
на своих страничках всякие чудеса, с картинками
и стихами, посвященными таинственному числу и
даже клубами любителей числа Пи. Предлагаем вашему
вниманию некоторые исторические и программные
этюды, связанные с числом Пи, а помня шутку о
том, что каждая добавленная в книгу формула вдвое
сокращает количество ее покупателей, будем перемежать
серьезные рассуждения с прогулкой по залам виртуального
клуба любителей числа Пи.
Немного истории. В Древнем Египте площадь круга
диаметром d определяли как 4*(d - d/9)2. Из приведенного
выражения можно заключить, что в то время число
"пи" считали равным дроби (16/9)2 ,
или 256/81, то есть пи=3.160...
В священной книге джайнизма (одной из древнейших
религий, существовавшей в Индии и возникшей в
VI веке до н.э.) имеется указание, из которого
следует что число пи в то время принимали равным
10^0.5, или 3.162...
Древние греки Евдокс, Гиппократ и другие сводили
измерение окружности к построению соответствующего
отрезка, а измерение круга - к построению равновеликого
квадрата. Однако, здесь их ожидали необъяснимые
(с их точки зрения) трудности. Действительно,
поскольку все построения выполнялись с помощью
циркуля и линейки, все их попытки сводились к
выражению отношения длины окружности к диаметру
(т.е. числа "пи") рациональным числом,
и поэтому заранее были обречены на провал.
Постепенно древние ученые поняли бесплодность
подобных попыток и стали искать другой к подход
к столь важной практической и теоретической проблеме.
Так Архимед, в III веке до нашей эры предложил
в своей работе "Измерение круга" три
положения:
· Всякий круг равновелик прямоугольному треугольнику,
катеты которого соответственно равны длине окружности
и ее радиусу
· Площади круга относятся к квадрату, построенному
на диаметре, как 11 к 14.
· Отношение любой окружности к ее диаметру меньше
чем 3 1/7 и больше 3 10/71
Последнее предложение Архимед обосновал последовательным
вычислением периметров правильных вписанных и
описанных многоугольников с 6, 12, 24, 48 и 96
сторонами. Таким образом, с одной стороны Архимед
определил, что пи=3.1419..., а с другой, он фактически
создал понятие приближенного вычисления, и определил
алгоритм приближенного вычисления числа пи.
Впоследствии, практически все ученые древнего
мира использовали аналогичный алгоритм в своих
уточнениях числа "пи". Так в Древней
Греции вскоре после Архимеда было получено более
точное приближение к числу "пи" - 355/113.
В V веке нашей эры китайским математиком Цзу Чунчжи
было найдено более точное значение пи=3.1416927...
В первой половине XV в. н. э. в обсерватории
Улугбека, возле Самарканда, астроном и математик
ал-Каши вычислил число "пи" с 16 десятичными
знаками. Он сделал 27 удвоений числа сторон многоугольников
и дошел до многоугольника, имеющего 3*228 углов.
Формула удвоения, связывающая длины сторон an
и a2n правильных n- и 2n-угольников, вписанных
в окружность (диаметром=1) имеет вид:
ris0.gif (527 bytes)
Или, в символах бейсика a2n= 0.5*sqr(2-2*sqr(1-an^2)),
n>=3
Попробуем и мы, с помощью Visual Basic'a посчитать
этим методом значение пи. Каждое удвоение сторон
дает многоугольник, более близкий к окружности,
а начинают обычно с шестиугольника, так как сторона
его равна радиусу описанной окружности. Итак...
Dim a1n As Double, a2n As Double, pi As Double,
i As Integer, n As Double, m As Integer
Private Sub Комманда1_Click()
qq = "c:\qqq.txt"
Open qq For Output As #1
a1n = 0.5
For i = 6 To 20
m = i - 5 ' степень 2 * 3
n = 3 * 2 ^ m ' кол. сторон
a2n = 0.5 * Sqr(2 - 2 * Sqr(1 - a1n * a1n))
pi = a2n * 2 * n
Print #1, "3*2^"; i - 5; "=";
n, pi, pi - 3.14159265358979
a1n = a2n
Next i
Close qqq
End Sub
Private Sub Комманда2_Click()
End
End Sub
3*2^ 1 = 6 3,10582854123025 -3,57641123595402E-02
3*2^ 2 = 12 3,13262861328124 -8,96404030855313E-03
3*2^ 3 = 24 3,13935020304687 -2,24245054291794E-03
3*2^ 4 = 48 3,14103195089053 -5,60702699260229E-04
3*2^ 5 = 96 3,14145247228534 -1,40181304445708E-04
3*2^ 6 = 192 3,14155760791162 -3,5045678167922E-05
3*2^ 7 = 384 3,14158389214894 -8,76144085415476E-06
3*2^ 8 = 768 3,14159046323676 -2,1903530282863E-06
3*2^ 9 = 1536 3,14159210604305 -5,47546741724858E-07
3*2^ 10 = 3072 3,14159251658815 -1,37001635369671E-07
3*2^ 11 = 6144 3,14159261864079 -3,49490005824293E-08
3*2^ 12 = 12288 3,14159264532122 -8,26857426972083E-09
3*2^ 13 = 24576 3,14159264532122 -8,26857426972083E-09
3*2^ 14 = 49152 3,14159264532122 -8,26857426972083E-09
3*2^ 15 = 98304 3,14159264532122 -8,26857426972083E-09
Первый столбик показывает число сторон вписанного
многоугольника, второй - отношение его периметра
к диаметру окружности, а третий - отклонение этого
отношения от известного значения пи. Уже на 12
шагу мы получаем 12288-угольник, который дает
значение пи с точностью до девятого знака после
запятой. Дальнейшая работа программы уточнения
не дает, это связано с возведением в квадрат и
извлечением корня из числа, объявленного как double.
Для применения метода удвоения придется искать
какие-нибудь ухищрения, атака "в лоб"
дала результаты, может, и неплохие, но по сравнению
с результатами Ал-Каши просто смехотворные. Кто
надумает, как обойти ограничения на длину числа
в Бейсике, пишите. А мы переходим в следующий
зал нашего виртуального клуба.
Христиан Крюзер, давний любитель числа пи не
только взял это число с собой в полет, но и заставил
его (наверняка не спросив) совершить прыжок вместе
с группой парашютистов (http://www.astro.univie.ac.at/~wasi/PI/proclaiming_pi/flying_high.html
)
|