Задайте значение параметра Приблизительное равенство (Approximate Equality), определяющего степень точности, используемую в булевых сравнениях и функциях прерывания.
1. Задайте функцию.
2. Введите программу, которая реализует Newton's Method и сравнивает его с результатом, возвращаемым встроенной функцией root.
Функция root учитывает значение TOL, но только до тех пор, пока оно не превышает 10-5.
Убедитесь, что переменная TOL имеет обозначение System.
3. Убедитесь, что отключены все опции расчета на вкладке Расчет (Calculation) в группе Параметры документа (Worksheet Settings) в пункте Параметры расчета (Calculation Options), а затем вызовите программу Newt и передайте ей имя функции, начальное приближение и максимальное число итераций.
Программе Newt разрешено, используя значение TOL по умолчанию (TOL:=TOL1), выполнить 50 итераций, и она выполняет их все, чтобы получить наилучший приближенный результат при строгом расчете.
Если опция Приблизительное равенство (Approximate Equality) отключена, то числа в интервале от -10-307 до +10-307 считаются нулями и сравнения выполняются строго с использованием самих чисел в представлении с плавающей точкой двойной точности.
4. Вернитесь к шагу 2 и задайте TOL значение TOL2. Программа Newt получит точные результаты через 20 итераций.
5. Вернитесь к шагу 2 и задайте TOL снова значение TOL1.
6. На вкладке Расчет (Calculation) в группе Параметры документа (Worksheet Settings) выберите пункт Параметры расчета (Calculation Options), а затем — Приблизительное равенство (Approximate Equality).
Значение, возвращаемое Newton's Method, изменится с -0.152137970680457 на -0.152137970680580, и достигнуто оно будет за 19 итераций.
Когда опция Приблизительное равенство (Approximate Equality) включена, два числа считаются равными, если абсолютное значение разницы между ними, деленное на их среднее, не превышает 10-12.
7. Проверьте, проходят ли полученные значения проверку на равенство:
8. Вернитесь к шагу 2 и задайте TOL значение TOL2. Значение, возвращаемое root, изменится с -0.152137970680456 на -0.152137970680457, и достигнуто оно будет за 19 итераций.
9. Проверьте, проходят ли полученные значения проверку на равенство: