Конвергенты из непрерывные дроби предлагают полезный метод для получения лучшего и лучшего дробного представления иррационального числа.Я также нашел их полезными для понимания связей с другими идеями посредством евклидового алгоритма .
Давайте использовать конвергенты для аппроксимации пи и квадратного корня из двух.
ClearAll[approximate];
approximate[r_, nConvergents_: 8, precision_: 10] :=
With[{c = Convergents[ContinuedFraction[r, nConvergents]]},
TableForm[Transpose[{c, N[r - c, precision]}],
TableHeadings -> {None, {Row[{"approximation of ", r}], "error"}}]]
Вот первые 8 конвергентов для пи:
approximate[Pi]
Вот первые 8 конвергентов для Sqrt[2]
:
approximate[Sqrt[2]]
Последовательные слагаемые ошибки сжимаются и изменяются по мере продвижения сходимости.
В approximate
вы можете по желанию указать желаемое количество конвергентов и точность.
Наслаждайтесь.
Вот дополнительная документация о продолжающихся фракциях, включая некоторые прекрасные демонстрации.