Структурирование программ в MATLAB
Выбери формат для чтения
Загружаем конспект в формате doc
Это займет всего пару минут! А пока ты можешь прочитать работу в формате Word 👇
Структурирование программ в MATLAB
Как и в других средах программирования разрабатываемую программу в MATLAB можно разделить на несколько частей и записать каждую из них в отдельный файл. Каждому файлу программист присваивает некоторое имя и стандартное расширение «.m», означающее, что в файле содержится программа, написанная на m-языке программирования. Требования к именам файлов: они должны состоять из латинских букв, цифр и знаков «_»(нижний подчерк) и начинаться с буквы. Заглавные и прописные буквы различаются.
Часть программы, записанная в файл может быть представлена в одной из двух допустимых в MATLAB форм: в виде сценария (Script) или функции (Function). Форма представления каждой части выбирается программистом, исходя из своих соображений.
Создание и использование сценариев.
Сценарий представляет собой часть программы, написанную на m-языке и записанную в файл с выбранным именем и расширением «.m». Ограничений на содержание программы практически нет, за исключение запрета разрывать имена переменных и управляющие конструкции. У сценария нет заголовка и в конце его не надо ставить end или return.
Для выполнения сценария достаточно в вызывающей программе просто в отдельной строке программы или в командной строке привести имя файла со сценарием, без указания расширения. После выполнения программы в сценарии управление передается в вызывающую программу в строку, следующую за обращением к сценарию. При этом в сценарии можно ссылаться на переменные, объявленные в вызывающей программе, а в вызывающей программе – на переменные, объявленные в сценарии.
Создание и использование пользовательских функций.
Функция также представляет собой часть программы, записанную в отдельный файл. Однако оформление этого файла должно отвечать некоторым требованиям. Первая программная строка в файле (заголовок функции) должна иметь вид
function [<выходные параметры>]=<имя функции>(<входные параметры>)
Имя файла с функцией обязательно должно точно совпадать с именем функции.
Если у функции несколько выходных параметров, то их заключают в квадратные скобки. После заголовка функции в ней обычно приводятся комментарии, разъясняющие назначение функции и смысл ее входных и выходных параметров. Эти комментарии выводятся при обращении к помощи по данной функции.
За заголовком следуют некоторые выбранные программистом операторы, реализующие содержание функции. Выполнение функции заканчивается после исполнения ее последнего оператора, либо досрочно – если в некоторой управляющей конструкции встретится оператор return, вызывающий прерывание функции и возврат управления в вызывающую программу. Так же, как и в сценарии в конце функции нельзя ставить end и не требуется return.
Входные и выходные параметры являются формальными, то есть при вызове функции на их место будут подставлены фактические параметры, действующие в вызывающей программе.
Как правило, в одном файле должна быть одна функция. В некоторых случаях в нем могут присутствовать другие функции, связанные с первой функцией. Этот случай будет рассматриваться в следующей теме.
Вызов функции для выполнения осуществляется указанием в командной строке, в операторе присваивания или в некотором выражении имени функции (и файла) с фактическими параметрами.
Локализация переменных в структурных частях программы
Любая переменная в программах на m-языке существует с момента ее объявления (как правило, после указания ее в левой части оператора присваивания значений) и до ее устранения из памяти. Переменные, объявляемые в разных частях программы подразделяются на локальные, глобальные (global) и сохраняющиеся (persistent).
Переменные, объявляемые в сценариях, локализуются в той части рабочего пространства (Workspace), с которой работает вызывающая сценарий часть программы. Так, если сценарий вызван из командной строки, то его переменные будут размещаться в основной части рабочего пространства и останутся там после завершения выполнения сценария.
Переменные, объявляемые в функциях, локализуются в специальной части рабочего пространства, которая автоматически освобождается после завершения выполнения функции. Исключение составляют переменные, которые в функции объявляются сохраняющимися – они остаются в этой специальной части памяти до следующего обращения к функции.
При разработке программ можно использовать объявление переменных глобальными. В этом случае они локализуются в основной части рабочего пространства.