Продолжаю цикл статей по работе с плавающей точкой. В первой статье я дал небольшое математическое введение и показал самый простой и очевидный способ вычисления синуса с примерами программ с разными «подводными камнями». Сегодня статья будет немного другая по стилю. Здесь не будет практики, зато мы копнём глубже математику и залезем в святая-святых — код стандартной библиотеки. Так же я дам ответ на вопрос в конце первой статьи. Итак, поехали.
Снова немного математики
Очевидно, чем быстрее убывает по модулю ряд Тейлора, тем меньше слагаемых нужно, чтобы добиться необходимой точности. И тем, кажется, точнее будет результат (ниже это будет обсуждено подробнее). Для сравнения, например, возьмём член седьмой степени ряда Тейлора ( ) при и . Значения выражения будут и
соответственно. Огромная разница, не правда ли? Так давайте попробуем найти способ уменьшить верхний предел интервала расчёта функции синуса.