Рис.1.27. Создание нового макроса
Пока у макроса нет ни параметров, ни
локальных переменных, ни
возвращаемого значения. Исправим эту ситуацию. Нажмите кнопку
Изменить параметры и добавьте один параметра байтового типа с именем
param. Локальные переменные в нашем макросе не понадобятся, а в качестве
типа возвращаемого
значения выберите BYTE. В результате в рабочей
области появится еще одна, пустая диаграмма. Это и есть подпрограмма или
макрос. Перетащите мышью с вертикальной линейки инструментов внутрь
цикла макрос (девятый сверху элемент). Теперь рабочая область
соответствует рис.1.28.
Дважды
щелкните мышью на элементе Макрос компонента в
основной диаграмме и в открывшемся диалоговом окне (рис 1.29) укажите,
что в качестве параметра (аргумента) макроса будет использоваться
переменная
n, а в качестве возвращаемого значения – переменная
fac.
Рис.1.28. В цикл помещен макрос
Рис.1.29.
Свойства макроса
Теперь разместите после вызова макроса элемент
Выход, свяжите его с
портом С и задайте выводимое значение переменной
fac.
В
основной диаграмме все готово, однако сам алгоритм макроса пока
еще не запрограммирован. Теперь будем работать с диаграммой макроса.
Прежде всего отметим, что у внутренних объектов макроса (параметры и
возвращаемое значение, а
также локальные переменные, если они
присутствуют) составные имена. Вначале идет имя макроса factor, а затем
через разделитель «.» – имя. В нашем случае это выглядит как factor.param и
factor.Return. Имя Return мы не задавали – оно формируется автоматически.
Для правильной
работы алгоритма необходимо, чтобы начальное
значение возвращаемой величины было равно 1. Разместите в области между
BEGIN и END диаграммы макроса элемент
Вычисление и определите в нем
действие factor.Return = 1. Ниже разместите цикл, который выполняется до
тех пор, пока параметр макроса больше нуля. В
цикле разместите элемент
Do'stlaringiz bilan baham: