ОСНОВЫ работы в MathCad. Основы работы в математическом пакете Mathcad
Скачать 8.94 Mb.
|
Пример 5. Требуется определить функцию, предназначенную для вычисления приближенного значения квадратного корня из числа N по формуле Ньютона: , где - заданное начальное приближение корня. Решение. Алгоритм решения задача подробно рассмотрен в главе 1, блок-схема алгоритма представлена на рис. 1.5. Поэтому остановимся только на спецификации программы-функции, и ее описании. Спецификацию для этой функцииможно записать следующим образом: Функция Fun(N,,x0) возвращает значение квадратного корня из числа N с заданной точностью вычислением – и заданным начальным приближением корня –x0. Анализ блок-схемы показывает, что в представленном циклическом процессе количество повторений цикла заранее неизвестно и напрямую зависит от точности вычислений. Поэтому пользоваться оператором for не является целесообразным. Для таких циклических процессов предусмотрен оператор цикла while.
Рис. 8.12. Шаблон оператора цикла while
Из описания оператора цикла следует, что условие повторения цикла записывается cправа от слова while, а повторяемая часть цикла должна располагаться ниже конструкции while, а в описанной блок-схеме один из повторяемых операторов, а именно оператор, в котором вычисляется значение х, располагается до блока с условием повторения. Чтобы согласовать действия в блок-схеме с действиями оператора, сделаем перестановку — поставим определение переменной х после блока-условия. А для проверки условия введем вспомогательную переменную R, и для того, чтобы на начальном этапе пройти внутрь цикла для вычислений, определим начальное значение этой переменной значением, большим, чем указанная точность, например, значением, равным 1. И тогда функция может быть представлена в виде, как это показано на рис. 8.13. Рис. 8.13. Описание и использование функции, предназначенной для извлечения квадратного корня Пример 6. Требуется определить функцию, которая будет изменять значения элементов матрицы, имеющей n строк и m столбцов следующим образом: заменить все неотрицательные элементы нулем, а отрицательные – единицей. Решение. Алгоритм решения задача подробно рассмотрен в главе 1, блок-схема алгоритма представлена на рис. 1.11. Поэтому остановимся только на спецификации программы-функции, и ее описании. Спецификацию для этой функцииможно записать следующим образом: Функция Fun(а,n,m) возвращает преобразованную матрицу а(nxm) по правилу: все неотрицательные элементы заменяются нулем, а отрицательные – единицей. Анализ алгоритма показывает, что в данном случае мы имеем дело с двумя вложенными циклами, в которых переменные i и j могут играть роль переменных-счетчиков операторов цикла типа for. Очевидно, что в качестве диапазона значений для этих переменных берется диапазон изменения индекса массива. На рис. 8.14 приведено определение функции. Описанная функция вызывается для изменения матрицы D, причем, измененная матрица заносится в матрицу T. Рис. 8.14. Описание и использование функции, предназначенной для преобразования матрицы
|