какое определение можно дать для файла сценария
Какое определение можно дать для файла сценария
Сценарием называют текстовый файл, каждая строка которого содержит одну команду.
До печати нескольких документов, используя команды файла сценария, системной переменной BACKGROUNDPLOT следует присвоить значение 0.
Каждая строка файла сценария содержит какую-либо команду. Каждый пробел в файле сценария является значимым, так как переменная SPACEBAR воспринимается как сигнал к завершению ввода данных. Необходимо хорошо знать последовательность запросов, чтобы правильно написать файл сценария.
В файлы сценариев можно включать комментарии. Комментарием считается любая строка, начинающаяся с точки с запятой (;), она игнорируется при обработке файла сценария. Последняя строка файла сценария должна быть пустой.
Имена файлов, содержащие пробелы, необходимо заключать в двойные кавычки. Например, для открытия чертежа my house.dwg из сценария следует использовать следующую запись:
В сценариях часто используются такие команды:
Задержка выполнения следующей команды на заданное количество миллисекунд
Переключение из текстового окна в область рисования
Возобновление выполнения прерванного файла сценария
Повторное выполнение файла сценария
Переключение в текстовое окно
Если вызов команды производится из файла сценария, подразумевается, что параметры системных переменных PICKADD и PICKAUTO имеют значения 1 и 0, соответственно. Это избавляет от необходимости проверять значения данных переменных.
Выполнение сценария прекращается при вызове другой команды сценария.
Данный сценарий включает сетку, задает глобальный коэффициент масштаба типов линий 3.0, выбирает в качестве текущего слой 0 и назначает ему цвет «Красный».
Файл сценария может содержать комментарии, как показано ниже:
26. Понятие о файлах-сценариях и файлах-функциях
Понятие о файлах-сценариях и файлах-функциях
Здесь полезно отметить, что m-файлы, создаваемые редактором/отладчиком, делятся на два класса:
файлы-сценарии, не имеющие входных параметров;
файлы-функции, имеющие входные параметры.
Видимый в окне редактора на рис. 5.21 файл является файлом-сценарием, или Script-файлом. Данный файл не имеет списка входных параметров и является примером простой процедуры без параметров. Он использует глобальные переменные, т. е. такие переменные, значения которых могут быть изменены в любой момент сеанса работы и в любом месте программы.
Рис. 5.22. Исполнение файла-сценария из командной строки
Для запуска файла-сценария из командной строки MATLAB достаточно указать его имя в этой строке. Рис. 5.22 поясняет это. Обратите внимание на команду grid on, исполняемую после запуска созданного файла. Эта команда наносит на график сетку из точечных линий.
Файл-функция отличается от файла-сценария прежде всего тем, что созданная им функция имеет входные параметры, список которых указывается в круглых скобках. Используемые в файле-функции переменные являются локальными переменными, изменение значений которых в теле функции никоим образом не влияет на значения, которые те же самые переменные могут иметь за пределами функции.
Иными словами, локальные переменные могут иметь те же имена (идентификаторы), что и глобальные переменные (хотя правила культурного программирования не рекомендуют смешивать имена локальных и глобальных переменных). В дальнейшем мы рассмотрим этот вопрос более подробно, а пока вернемся к теме данного урока — описанию интерфейса компонентов системы MATLAB.
8. М-файлы сценариев и функций
М-файлы сценариев и функций
Структура и свойства файлов сценариев
Итак, мы установили, что работа в командном режиме (сессия) не является программированием. Внешним атрибутом последнего в MATLAB служит задание последовательности действий по программе, записанной в виде m-файла. В уроке 5 было показано, что для создания m-файлов может использоваться как встроенный редактор, так и любой текстовый редактор, поддерживающий формат ASCII. Подготовленный и записанный на диск m-файл становится частью системы, и его можно вызывать как из командной строки, так и из другого m-файла. Есть два типа m-файлов: файлы-сценарии и файлы-функции. Важно, что в процессе своего создания они проходят синтаксический контроль с помощью встроенного в систему MATLAB редактора/отладчика m-файлов.
Файл-сценарий, именуемый также Script-файлом, является просто записью серии команд без входных и выходных параметров. Он имеет следующую структуру:
«Основной комментарий %Дополнительный комментарий Тело файла с любыми выражениями Важны следующие свойства файлов-сценариев:
они не имеют входных и выходных аргументов;
работают с данными из рабочей области;
в процессе выполнения не компилируются;
представляют собой зафиксированную в виде файла последовательность операций, полностью аналогичную той, что используется в сессии.
Основным комментарием является первая строка текстовых комментариев, а дополнительным — последующие строки. Основной комментарий выводится при выполнении команд lookfor и help имя_каталога. Полный комментарий выводится при выполнении команды help Имя_файла. Рассмотрим следующий файл-сценарий:
%Plot with color red
%Строит график синусоиды линией красного цвета
%с выведенной масштабной сеткой в интервале [xmin.xmax]
Первые три строки здесь — это комментарий, остальные — тело файла. Обратите внимание на возможность задания комментария на русском языке. Знак % в комментариях должен начинаться с первой позиции строки. В противном случае команда help name не будет воспринимать комментарий (иногда это может понадобиться) и возвратит сообщение вида No help comments found in-name.m.
Обратите внимание на то, что такой файл нельзя запустить без предварительной подготовки, сводящейся к заданию значений переменным xmin и хтах, использованным в теле файла. Это следствие первого свойства файлов-сценариев — они работают с данными из рабочей области. Переменные, используемые в файлах-сценариях, являются глобальными, т. е. они действуют одинаково в командах сессии и внутри программного блока, которым является файл-сценарий. Поэтому заданные в сессии значения переменных используются и в теле файла. Имена файлов-сценариев нельзя использовать в качестве параметров функций, поскольку файлы-сценарии не возвращают значений. Можно сказать, что файл-сценарий — это простейшая программа на языке программирования MATLAB [ Файлы-сценарии нельзя компилировать. Перед компилированием их нужно преобразовать в файлы-функции — Примеч. ред. ].
Рис.20.2. Пример работы с файлом pcr
Понятие о файлах-сценариях и файлах-функциях
Здесь полезно отметить, что m-файлы, создаваемые редактором/отладчиком, делятся на два класса:
файлы-сценарии, не имеющие входных параметров;
файлы-функции, имеющие входные параметры.
Файл сценарий называется также Script-файлом или просто скриптом.
Файл-сценарий имеет весьма простую структуру:
% Основной комментарий, если необходимо.
% Дополнительный комментарий, если необходимо.
Тело программы с любыми допустимыми выражениями.
Важными являются следующие свойства файлов-сценариев:
Они не имеют входных и выходных аргументов.
Работают с данными из рабочей области.
В процессе выполнения не компилируются.
Представляют собой последовательность операций, аналогичную той, что используется в сеансе работы из командной строки.
Пример. Видимый в окне редактора на рис. 1 файл является файлом-сценарием, или Script-файлом.
Отличие М-файла функции от сценария состоит в том, что он является аналогом подпрограммы типа function в языке Pascal.
Файл-функция имеет входные параметры, список которых указывается в круглых скобках. Используемые в файле-функции переменные являются локальными переменными, изменение значений которых в теле функции никоим образом не влияет на значения, которые те же самые переменные могут иметь за пределами функции.
Иными словами, локальные переменные могут иметь те же имена (идентификаторы), что и глобальные переменные (хотя правила культурного программирования не рекомендуют смешивать имена локальных и глобальных переменных). В дальнейшем мы рассмотрим этот вопрос более подробно, а пока вернемся к описанию интерфейса компонентов системы MATLAB.
Структура М-файла функции с одним выходным параметром имеет вид:
function var = f _ name (Список параметров)
% Основной комментарий, если необходимо.
% Дополнительный комментарий, если необходимо.
Тело программы с любыми выражениями.
М-файл функция обладает следующими свойствами:
Результат выполнения М-файла функции присваивается имени функции, которое может использоваться в математических выражениях подобно функциям sin(x), log(x) и т. п.
Все переменные, используемые в файле-функции, являются локальными, т.е. действуют только в пределах тела функции.
Последняя конструкция vаг=выражение вводится, если требуется, чтобы функция возвращала результат вычислений. Вместо имени var можно ипользовать любое другое имя.
Файл-функция является самостоятельным программным модулем, который связан с другими модулями и головной программой через входные и выходные параметры.
При вызове файла-функции он компилируется и затем исполняется.
m-файл функция должен сохраняться в ваш рабочий каталог.
Пример. m-файл, содержащий текст
Данную функцию можно использовать, например, следующим образом:
Упражнение 2. Выполнить данный пример, придумав свою собственную функцию.
Основы программирования
Программирование в системе MATLAB является средством ее расширения и использовании в решении специфических проблем. Некоторые вопросы программирования изложены выше, здесь рассмотрим правила, дополняющие синтаксис языка MATLAB.
Программы оперируют с переменными и константами. Переменные – это имеющие имена объекты, способные хранить разные по значению данные. В зависимости от этих данных переменные могут быть числовыми или символьными, векторными или матричными.
Для задания переменным определенных значений используется оператор присваивания, вводимый знаком равенства =
Имя _ переменной = Выражение ;
Типы переменных заранее не объявляются. Они определяются выражением, значение которого присваивается переменной.
Имя переменной может содержать сколько угодно символов, но идентифицируется только 31 начальный символ. Имя любой переменной должно быть уникальным. Имя должно начинаться с буквы, может содержать буквы, цифры и символ подчеркивания _. Недопустимо включать в имена пробелы и специальные знаки.
Ввод и вывод данных
В языке MATLAB нет явных операторов ввода вывода данных в режиме диалога. Эта проблема решается для ввода данных оператором присваивания и использованием системных констант. Вывод данных осуществляется еще проще. Для этого необходимо после математического выражения не ставить символ точку с запятой (;).
К системным константам относятся:
Весьма часто необходимо выполнить формирование упорядоченных числовых последовательностей. Такие последовательности нужны для созда-ния векторов или значений аргументов х при построении графиков. В MATLAB для этого используется оператор двоеточие (:), который представляется следующим образом:
х = Начальное _ значение : Шаг : Конечное _ значение ;
Эта конструкция создает возрастающую последовательность чисел, которая начинается с начального значения, изменяется на заданный шаг и завершается конечным значением. Если шаг не задан, то он принимает значение 1. Если конечное значение указано меньшим, чем начальное значение, то выдается сообщение об ошибке.
Сообщения об ошибках и исправление ошибок
Система MATLAB контролирует правильность написания программ и, при наличии ошибок, выдает соответствующее сообщение в окне команд. При этом указывается номер строки, где допущена ошибка, и характер ошибки. После уяснения сути ошибки ее необходимо исправить в тексте программы, сохранить М-файл командой Save и снова выполнить программу. Перед этим желательно очистить окно команд от сообщения об ошибках (чтобы не загромождать полученную картинку) с помощью команды Clear Command Windows (Очистить окно команд) в меню Edit.
Примечание. Более сложные элементы программирования будут рассмотрены позднее.
Иллюстрированный самоучитель по MatLab
М-файлы сценариев и функций. Структура и свойства файлов сценариев.
Итак, мы установили, что работа в командном режиме (сессия) не является программированием. Внешним атрибутом последнего в MATLAB служит задание последовательности действий по программе, записанной в виде m-файла. В уроке 5 было показано, что для создания m-файлов может использоваться как встроенный редактор, так и любой текстовый редактор, поддерживающий формат ASCII. Подготовленный и записанный на диск m-файл становится частью системы, и его можно вызывать как из командной строки, так и из другого m-файла. Есть два типа m-файлов: файлы-сценарии и файлы-функции. Важно, что в процессе своего создания они проходят синтаксический контроль с помощью встроенного в систему MATLAB редактора/отладчика m-файлов.
Файл-сценарий, именуемый также Script-файлом, является просто записью серии команд без входных и выходных параметров. Он имеет следующую структуру:
Важны следующие свойства файлов-сценариев:
Основным комментарием является первая строка текстовых комментариев, а дополнительным – последующие строки. Основной комментарий выводится при выполнении команд lookfor и help имя_каталога. Полный комментарий выводится при выполнении команды help Имя_файла. Рассмотрим следующий файл-сценарий:
Первые три строки здесь – это комментарий, остальные – тело файла. Обратите внимание на возможность задания комментария на русском языке. Знак % в комментариях должен начинаться с первой позиции строки. В противном случае команда help name не будет воспринимать комментарий (иногда это может понадобиться) и возвратит сообщение вида No help comments found in-name.m.
Обратите внимание на то, что такой файл нельзя запустить без предварительной подготовки, сводящейся к заданию значений переменным xmin и хmах, использованным в теле файла. Это следствие первого свойства файлов-сценариев – они работают с данными из рабочей области. Переменные, используемые в файлах-сценариях, являются глобальными, т. е. они действуют одинаково в командах сессии и внутри программного блока, которым является файл-сценарий. Поэтому заданные в сессии значения переменных используются и в теле файла. Имена файлов-сценариев нельзя использовать в качестве параметров функций, поскольку файлы-сценарии не возвращают значений. Можно сказать, что файл-сценарий – это простейшая программа на языке программирования MATLAB [Файлы-сценарии нельзя компилировать. Перед компилированием их нужно преобразовать в файлы-функции – Примеч. ред.].
Рис. 20.2. Пример работы с файлом pcr