Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Описание программы-функции



Перед тем как использовать программу-функцию нужно ее описать. Описание программы-функции размещается в рабочем документе перед вызовом программы-функции и включает в себя заголовок функции и тело функции, соединенные в единое целое с помощью операции присваивания («:=»).

Заметим, что если программа используется для вычисления одного значения, то в своем заголовке она не содержит списка формальных параметров и называется программой-скаляром.

Программа-функция может не иметь формальных параметров и тогда, когда данные передаются через имена переменных, определенных выше описания программы-функции. Эти переменные будут являться глобальными для данной функции.

Технология создания программы-функции в рабочем документе MathCAD состоит из следующих шагов:

1. Ввести заголовок функции.

2. Ввести знак присваивания «: =».

3. Выполнить командуAdd line, расположенную на панели Programming ( Программирование). Появившейся на экране шаблон с вертикальной чертой и полями для ввода операторов будут составлять заготовку для тела программы-функции.

4. Вписать операторы в шаблон-заготовку. Тело программы-функции может включать любое число операторов: локальных операторов присваивания, условных операторов и операторов цикла, а также вызов других программ-функций.

5. Самоенижнее поле всегда предназначено для определения возвращаемого программой значения.

Пример 18. Требуется подготовить описание функции вычислить значения этой функции при х = 4.15 и g = 1.854.

Решение. Заметим, что при вычислении y можно обойтись без описания и использования пользовательской функции и тем более без программирования, как это показано на рис. 23, а. Использование функции следует из требования к задаче для простоты изложения. Для нахождения значения функции «внутрь» программы-функции следует передать значения х и g, необходимые для выполнения вычислений внутри программы. Поэтому переменные х и g следует включить в список формальных параметров заголовка создаваемой функции. Назовем эту функцию – у. Тогда подготовка описания функции, и ее выполнение в соответствии с описанной технологией могут быть выполнены, как это представлено на рис. 24.

Рис. 23. Демонстрация элементов программирования простых выражений

В данном примере введена вспомогательная локальная переменная t для вычисления значения функции. И эта переменная расположена в последней строчке программного блока. В пункте (6) приведена операция вычисления функции для фактических значений. На рис. 23, b, с приведены другие варианты решения поставленной задачи.

Рис. 24. Пошаговое создание и выполнение программы-функции

В примере, представленном на рис. 23, в первой колонке a для вычисления значения используется базовый набор средств без элементов программирования. Во второй b и третьей c колонках производятся точно такие же вычисления, но с использованием элементов программирования. Обе программы (b и с) можно считать эквивалентными, так как возвращают они одно и то же значение, которое располагается в последней строчке программируемой части. В (b и с) мы имеем дело с программой – скаляром, так как они используются для вычисления одного значения и не имеют формальных параметров.

Внутри программ (b и с) используются глобальные переменные g и из документа. Значения этих переменных определены заранее. Обе программы из примера, представленного на рис. 23, в своей программируемой части содержат операторы присваивания с использованием локальных переменных. Переменные, созданные внутри программы с таким видом присваивания, являются внутренними, и доступ к ним может осуществляться только в самой программе.

1. В программной части используются глобальные переменные обычно только как операнды в выражениях.

2. Присвоить глобальным переменным значения внутри программы можно только локальным образом. После выхода из программы эти переменные сохраняют свои «глобальные» значения.

3. Использование «обычного» оператора присваивания «:=» в теле программы-функции приводит к синтаксической ошибке.

4. Последняя строка программы не должна содержать управляющих операторов. Эта строка задает значение, возвращаемое программой, т.е. получает результат вычислений и может содержать имя локальной переменной результата (рис. 24, с) или выражение, вычисляющее результат (рис. 24, b).

5. Обычно программа содержит больше чем две строки, поэтому рекомендуется сразу задавать блок из 5–6 маркеров.

6. Добавление недостающих полей для ввода дополнительных операторов производится с помощью кнопкиAdd line панели программирования. При этом поле ввода добавляется внизу выделенного к этому моменту оператора.

7. Для удаления того или иного оператора или поля ввода из тела программы-функции, нужно заключить его выделить и нажать клавишу < Delete>.

8. Программный блок можно создать и внутри уже заданного блока (вложенный блок). Для этого следует использовать один из стандартных способов: поставить курсор в маркер соответствующего оператора программирования и выполнить Add line.

9. Иногда при написании программы бывает нужным добавить строку к уже созданному блоку. Чтобы это сделать, поставьте курсор в ту строку блока, выше или ниже которой должна быть введена строка, и нажмите клавишу <Пробел>. При этом строка будет выделена и можно будет произвести добавление одним из стандартных способов.

10. Положение вставляемого маркера определяется положением вертикальной черты курсора. Если она находится слева от выделенного выражения, то маркер будет добавлен выше выделенной строки, если справа – то ниже.

11. Чтобы развернуть курсор в нужную сторону, нажмите клавишу <Insert>.

12. Чтобы добавить строку к целому блоку, его следует выделить, дважды нажав клавишу <Пробел>.

13. В том случае, если программа содержит блоки различных уровней, то для добавления строки, например, к первому блоку, нажмите клавишу <Пробел> несколько раз: при каждом нажатии будут выделяться блоки более низкого уровня.

Пример 19. Требуется найти действительные корни квадратного уравнения ax2 + bx + с = 0, где a, b, с – любые действительные числа и . Известно, что в зависимости от знака дискриминанта d = b 2 4 ас действительные корни уравнения могут быть получены по формуле

Блок-схема этого алгоритма показана на рис. 25.

Рис. 25. Блок-схема вычисления
действительных корней квадратного уравнения

Решение. Опишем вычисление корней в виде программы-функции. Спецификацию для этой функции можно записать следующим образом.

Функция R (a, b, c) возвращает значения действительных корней квадратного уравнения a∙x 2 + b∙x + с = 0 или сообщает о том, что уравнение не имеет корней. Здесь a, b, с – коэффициенты уравнения.

Очевидно, что в данном случае мы имеем дело с ветвящимся процессом. Программирование ветвящихся процессов требует проверки некоторых условий, в зависимости от которых выбирается вычислительная формула. Для реализации таких вычислений на панели программирования предусмотрен оператор if (если).





Дата публикования: 2015-10-09; Прочитано: 390 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...