Эта тема обсуждает различия между скриптами и функциями, и показывает, как преобразовать скрипт в функцию.
И скрипты и функции позволяют вам последовательностям повторного использования команд путем хранения их в программных файлах. Скрипты являются самым простым типом программы, поскольку они хранят команды точно, когда вы ввели бы их в командной строке. Однако функции более гибки и более легко расширяемы.
Создайте скрипт в файле с именем triarea.m это вычисляет площадь треугольника:
b = 5; h = 3; a = 0.5*(b.*h)
После того, как вы сохраните файл, можно вызвать скрипт из командной строки:
triarea
a =
7.5000Чтобы вычислить область другого треугольника с помощью того же скрипта, вы могли обновить значения b и h в скрипте и повторно выполненный это. Каждый раз, когда вы запускаете его, скрипт хранит результат в переменной под названием a это находится в базовом рабочем пространстве.
Однако вместо того, чтобы вручную обновить скрипт каждый раз, можно сделать программу более гибкой путем преобразования его в функцию. Замените операторы, которые присваивают значения b и h с оператором объявления функции. Объявление включает function ключевое слово, имена аргументов ввода и вывода и имя функции.
function a = triarea(b,h) a = 0.5*(b.*h); end
После того, как вы сохраните файл, можно вызвать функцию с различной основой и значениями высоты из командной строки, не изменяя скрипт:
a1 = triarea(1,5) a2 = triarea(2,10) a3 = triarea(3,6)
a1 =
2.5000
a2 =
10
a3 =
9Функции имеют свою собственную рабочую область, отдельную от базового рабочего пространства. Поэтому ни один из вызовов функционального triarea перезапишите значение a в базовом рабочем пространстве. Вместо этого функция присваивает результаты переменным a1, a2, и a3.