Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Тело файла с любыми выражениями

2024-02-15 83
Тело файла с любыми выражениями 0.00 из 5.00 0 оценок
Заказать работу

Вверх
Содержание
Поиск

 

Особенности файлов-сценариев состоят в следующем:

–они не имеют входных и выходных аргументов;

–работают с данными из рабочей области;

–в процессе выполнения не компилируются;

–представляют собой зафиксированную в виде файла последовательность операций, полностью аналогичную той, что используется в сессии при работе в командном окне.

Основным комментарием является первая строка текстовых комментариев, а дополнительным – последующие строки. Основной комментарий выводится при выполнении команд 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


Поделиться с друзьями:

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.012 с.