|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Max Alekseyev 2:5015/60 20 Jan 2002 14:11:38 To : Vadim Goncharov Subject : Пи -------------------------------------------------------------------------------- Replying to a message of Vadim Goncharov to Evgenij Masherov: AND>>> Привожу реализацию. arctg(1) = (Pi / 4) = AND>>> 1-1/3+1/5-...+((-1)^(n-1))*(1/(2n-1)) Работает 100%. Как можно AND>>> легко подсчитать, для точности в n знаков после запятой необходимо AND>>> произвести (10^(n+1))/2 + 1 итераций. EM>> Он сходится ОЧЕHЬ медленно (это связано с тем, что он не абсолютно EM>> сходящийся). Если брать арктангенс от чисел, меньших единицы, EM>> скорость сходимости возрастает. Используя выражения для тангенса EM>> суммы, получили формулу для Пи через арктангенс меньших. Среди них EM>> Pi/4=4*arctg(1/5)-arctg(1/239) и другие. VG> А почему он будет сходиться медленно и вариант с 1/5 и 1/239 гораздо VG> быстрее? Сравни, например, пятые члены всех рядов. Это 1/9 ~= 0.11111111... 1/(9*5^9) = 1/17578125 ~= 0.0000000569... 1/(9*239^9) = 1/22899374409963958061031 ~= 0.000000000000... Чувствуешь разницу? VG> Ведь во-втором случае нам надо считать аж два ряда. Да, но для достижения той же точности нужно суммировать значительно меньшее число членов. Суммарно получается, что вычислять по формуле с арктангенсами значительно эффективнее. VG> И еще лучше бы формулу чтоб сразу Пи получалось, а не число типа Пи/4 Держи: Pi = 16*arctg(1/5) - 4*arctg(1/239) Regards, ш.ш Max ~ --- FleetStreet 1.27.3.7 * Origin: (2:5015/60) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/18133c4ac20a.html, оценка из 5, голосов 10
|