Блокноты MuPAD® будут демонтированы в будущем релизе. Используйте live скрипты MATLAB® вместо этого.
Live скрипты MATLAB поддерживают большую часть функциональности MuPAD, хотя существуют некоторые различия. Для получения дополнительной информации смотрите, Преобразовывают Notebook MuPAD в Live скрипты MATLAB.
При записи процедуры в MuPAD® можно включать сообщения об ошибке и предупреждающие сообщения в процедуре. Если система сталкивается с ошибкой при выполнении процедуры, она отключает осуществление процедуры и отображает сообщение об ошибке. Если система сталкивается с предупреждением, она распечатывает предупреждающее сообщение и продолжает выполнять процедуру. Можно задать собственную ошибку и предупреждающие сообщения.
Функция error
отключает осуществление текущей процедуры с ошибкой. Например, следующая процедура преобразовывает номер месяца к имени месяца. Процедура проверяет тип своего аргумента и принимает только положительные целые числа. С тех пор существует только 12 месяцев через год, процедура должна также гарантировать, что номер не превышает 12. Функция error
позволяет вам отключить вызов процедуры с соответствующим сообщением об ошибке, если номер больше, чем 12:
monthNumberToName := proc(n:Type::PosInt) begin if n > 12 then error("Invalid number. The number must not exceed 12.") end_if; case n of 1 do return(January) of 2 do return(February) of 3 do return(March) of 4 do return(April) of 5 do return(May) of 6 do return(June) of 7 do return(July) of 8 do return(August) of 9 do return(September) of 10 do return(October) of 11 do return(November) of 12 do return(December) end_case: end:
Если вы вызываете monthNumberToName
с каким-либо целым числом от 1 до 12, процедура возвращает имя месяца:
monthNumberToName(12)
Если вы вызываете monthNumberToName
с целым числом, больше, чем 12, процедура останавливается с заданной ошибкой:
monthNumberToName(13)
Error: Invalid number. The number must not exceed 12. [monthNumberToName]
Предупреждающие сообщения помогают вам сообщить своим пользователям о потенциальных проблемах в алгоритме. Эти проблемы обычно незначительны и не вмешиваются в осуществление процедуры. Например, можно предупредить пользователей об ограниченной функциональности процедуры или о неявных предположениях, сделанных процедурой.
Следующая процедура использует функцию simplify
, чтобы упростить часть. Функция неявно принимает, что переменная x
не равна a
. Если ваша процедура использует функцию simplify
, можно добавить соблюдающее предупреждение для пользователей:
simplifyW := proc(a) begin warning("Assuming x <> ".expr2text(a)); simplify((x^2 - a^2)/(x - a)) end:
Теперь, ваша процедура сообщает своим пользователям о предположении:
simplifyW(10)
Warning: Assuming x <> 10 [simplifyW]