КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Основы программирования в MatLabСистема компьютерной математики MATLAB имеет собственный язык программирования высокого уровня, включающий как все обычные возможности традиционных языков программирования и математические возможности MatLab. Файлы с текстами программ сохраняются в MATLAB с расширением .m и, как правило, называются М-файлами. Для подготовки текста нового М-файла следует использовать команду File, New, M-file, для загрузки существующего М-файла и его последующего редактирования - команду File, Open.В MATLAB имеются два основных вида М-файлов: файлы-сценарии и файлы функции. Файлы-сценарии Файл-сценарий представляет собой набор команд MATLAB, сохраненный в файле. После того, как файл-сценарий подготовлен и сохранен, для его выполнения требуется указать имя данного файла-сценария в командном окне или в другом М-файле. Файл-сценарий не имеет входных или выходных параметров. При выполнении файла–cценария используются и изменяются переменные рабочей области, как если бы команды, составляющие файл-сценарий, просто вводились в командном окне. Пример. Разработать файл-сценарий для выделения последнего столбца произвольной матрицы в отдельную матрицу. Для подготовки текста М-файла требуется выбрать команду File, New M-file. Вызывается редактор для записи текста М-файла. В данном примере текст М-файла может быть следующим: % Выделение последней строки в отдельную матрицу [m,n]=size(a); b=a(:,n); Символ "% " в М-файле является признаком комментария. Функция size(имя_матрицы) определяет размеры заданной матрицы. Точнее, результатом выполнения функции size является матрица (строка) из двух элементов, первый из которых - количество строк заданной матрицы, второй количество столбцов. В результате переменная m получит значение, равное количеству строк матрицы а, а переменная n - количеству ее столбцов. Последняя команда в файле-сценарии выделяет из матрицы с именем а последний столбец. Для сохранения М-файла выбирается команда File, Save, в которой указывается имя. После сохранения М-файла можно закрыть окно редактора и вернуться в командное окно. Прежде чем использовать созданную программу-сценарий, необходимо создать матрицу с именем а, которая будет обрабатываться с помощью этого сценария. Например, введем в командном окне следующую матрицу из трех строк и четырех столбцов: а=[5,8,5,7;3,1,9,5;5,9,6,1]. Матрица, которую предполагается обрабатывать с помощью созданного файла-сценария, должна иметь имя а, так как это имя указано в файле-сценарии. Чтобы выделить из введенной матрицы последний столбец в отдельную матрицу, требуется ввести в командном окне имя файла-сценария, т.е. слово stolbec. В результате выполнения файла-сценария в рабочей области создаются три новые переменные: m=3, n=5, b=[7; 5; 1]. Если до выполнения файла-сценария переменные с такими именами уже имелись в рабочей области, то их прежние значения теряются. Файлы-функции Файл-функция представляет собой программу, обычно имеющую входные и выходные параметры. Файл-функция обрабатывает величины, переданные ему в качестве входных параметров, и возвращает переменные, указанные как выходные параметры. При выполнении файла-функции переменные рабочей области не изменяются и не используются: все переменные файла-функции локальны. Например, если в рабочей области имеется переменная с именем х, и в файле-функции имеется переменная с тем же именем, то любые операции с переменной х в файле-функции никак не влияют на ее значение в рабочей области (конечно, если при вызове файла-функции переменная х не была указана в качестве выходного параметра).
Основные управляющие структуры для программ в MatLab Основные конструкции, используемые для управления выполнением программы в MATLAB, подобны аналогичным конструкциям в алгоритмических языках программирования Fortran, Pascal и др. Условный оператор: if условие_1 команды_1 elseif условие_2 команды_2 else команды_3 end Здесь команды_1, команды_2 и команды_3 - произвольные наборы команд MatLab, выполняемые при соответствующих условиях. Оператор цикла "до": for переменная=начальное_значение : шаг : конечное_значение команды end Если шаг равен единице, то его можно не указывать. Оператор цикла "пока": while условие команды end Для прерывания цикла используется команда break. Переключатель: switch выражение case значение_1 команды_1 case значение_2 команды_2 otherwise команды end Если выражение равно значению_1, то выполняются команды_1; если выражение равно значению_2, то выполняются команды__2 и т.д. Если выражение не равно ни одному из указанных значений, то выполняются команды, указанные после слова otherwise. Команда ввода (ввод значения переменной x): х=input('Введите переменную:'); Команда вывода (вывод значения переменной у): disp('Значение Y равно ') ; disp(y)
|