В этом разделе рассматриваются различия между скриптами и функциями, и показано, как преобразовать скрипт в функцию.
И скрипты, и функции позволяют вам повторно использовать последовательности команд путем хранения их в программных файлах. Скрипты являются самым простым типом программы, поскольку они хранят команды именно так, как вы бы вводили их в командной строке. Однако функции более гибки и более легко расширяются.
Создайте скрипт в файле с именем 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.