Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Топ:
Оценка эффективности инструментов коммуникационной политики: Внешние коммуникации - обмен информацией между организацией и её внешней средой...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Характеристика АТП и сварочно-жестяницкого участка: Транспорт в настоящее время является одной из важнейших отраслей народного хозяйства...
Интересное:
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Подходы к решению темы фильма: Существует три основных типа исторического фильма, имеющих между собой много общего...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Дисциплины:
2024-02-15 | 22 |
5.00
из
|
Заказать работу |
|
|
Особенности файлов-сценариев состоят в следующем:
–они не имеют входных и выходных аргументов;
–работают с данными из рабочей области;
–в процессе выполнения не компилируются;
–представляют собой зафиксированную в виде файла последовательность операций, полностью аналогичную той, что используется в сессии при работе в командном окне.
Основным комментарием является первая строка текстовых комментариев, а дополнительным – последующие строки. Основной комментарий выводится при выполнении команд lookfor и help-имя_каталога. Полный комментарий выводится при выполнении команды help-Имя_файла.
Создание m-файла сценария производится путем копирования заданной последовательности команд из Command Window, размещением ее в окне редактора, вызываемом последовательностью File - New - BlankM - File и сохранением ее под некоторым именем.
Использование m-файла-сценария состоит в вызове его в заданное место Command Window для выполнения определяемых им действий.
М-файл-функция является типичным объектом языка программирования системы Matlab. Одновременно он является полноценным модулем с точки зрения структурного программирования, поскольку содержит входные и выходные параметры и использует аппарат локальных переменных. Структура такого модуля с одним выходным параметром выглядит следующим образом:
functionvаг = f_name(Список_параметров)
%Основной комментарий
%Дополнительный комментарий
Тело файла с любыми выражениями
vаг=выражение
М-файл-функция имеет следующие свойства:
– он начинается с объявления function, после которого указывается имя переменной var – выходного параметра, имя самой функции и список ее входных параметров;
|
– функция выдает значение и может использоваться в виде
Name(список_параметров)
в математических выражениях;
–все переменные, имеющиеся в теле файла-функции, являются локальными , т.е. действуют только в пределах тела функции;
–файл-функция является самостоятельным программным модулем, который общается с другими модулями через свои входные и выходные параметры;
–правила вывода комментариев те же, что у файлов-сценариев;
–файл-функция служит средством расширения системы Matlab;
–при обнаружении файла-функции он компилируется и затем исполняется, а созданные машинные коды хранятся в рабочей области системы Matlab.
Последняя конструкция vаг = выражение вводится, если требуется, чтобы функция выдавала результат вычислений.
Пример 5. Файл - функция
function r=randint(m,n)
%RANDINT случайная матрица с целыми элементами.
%randint(m,n) возвращает матрицу mxn с целыми
%элемента м и между 0 и 9.
a =floor(10*rand(m,n));
Пример 6. Более общий вид файл-функции
function r=randint(m,n,a,b)
%RANDINT случайная матрица с целыми элементами.
%randint(m,n)возвращает матрицу mxn с целыми
%элементами между 0 и 9.
%rand(m,n,a,b) возвращает матрицу с целыми
%элементами в диапазоне между целыми a и b.
ifnargin<3,a =0;b =9;end
r =floor((b-a+1)*rand(m,n))+a;
Этот текст должен быть записан на диск в виде файла с именем randint.m (в соответствии с именем функции – это обязательное условие для функции).
Первая строка функции – объявление имени функции, входные аргументы, выходные аргументы. Без такой строки весь следующий файл является программой, или сценарием, а не функцией. Так, например, оператор
z =randint(4,5)
приведет к передаче чисел 4 и 5 переменным m и n, а выходной результат будет передан переменной z. Поскольку переменные в файле-функции локальные, их имена никак не влияют на имена и значения переменных в текущей рабочей области Matlab.
Приведенная форма файла-функции характерна для функции с одним выходным параметром. Если выходных параметров больше, то они указываются в квадратных скобках после слова function. При этом структура модуля имеет следующий вид:
|
function[vаг1,vаг2,...]=f_namе (список_параметров)
%Основной комментарий
%Дополнительный комментарий
Тело файла с любыми выражениями
Var1-выражение
Такая функция во многом напоминает процедуру. Ее нельзя слепо использовать непосредственно в математи-ческих выражениях, поскольку она выдает не единственный результат, а множество результатов – по числу выходных параметров. Если функция, имеющая несколько выходных параметров, входит в состав математического выражения, для вычислений в выражении будет использован первый из выходных параметров. Это зачастую ведет к ошибкам в вычислениях. Поэтому, как отмечалось, данная функция используется как отдельный элемент программ в виде
[varl,var2, …] = namе (Список_параметров).
После такого вызова выходные переменные varl, var2, … становятся определенными и их можно использовать в последующих математических выражениях и иных сегментах программы. Если функция используется в виде
f_namе (список_параметров),
то выдается значение только для первого выходного параметра – переменной varl. Приведенная далее функция, которая вычисляет наибольший общий делитель двух целых чисел с помощью алгоритма Евклида, иллюстрирует также использование функции вывода сообщений об ошибках.
Пример 7. Файл-функция с двумя параметрами
function a=gcd(a,b)
%GCD Наибольший общий делитель.
%gcd(a,b) является наибольшим общим делителем
%целых чисел a и b,оба не равны нулю.
a =round(abs(a));b =round(abs(b));
if a ==0 &b ==0
|
|
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!