Я изучаю основы MATLAB и застрял на том, как создавать ошибки для функций. Вот моя попытка:
function kinetic = KE(m,v)
KE = 0.5*m*v*v
%error messages
if (isempty(m))
% mass is empty
error('No mass given (argument 1)');
elseif (isempty(v))
% velocity is empty
error('No velocity given (argument 2)');
end
fprintf('The kinetic energy is %d joules\n', KE);
Поэтому, если пользователь не указывает 2 переменные, функция выдает ошибку, сообщая пользователю, какую переменную он не указал. Когда я пытаюсь получить это сообщение об ошибке, MATLAB возвращает общее сообщение об ошибке:
kinetic(,3)
kinetic(,3)
|
Error: Expression or statement is incorrect--possibly unbalanced (, {, or [.
Я не знаю, как это исправить. Я пытался заменить аргументы isempty
на arg1
или arg2
, но это не имело значения. Затем я попытался скопировать код примера на http://www.mathworks.co.uk/help/matlab/ref/error.html, но это все равно не помогло.
Как вы генерируете определенные ошибки для функций нескольких переменных?
Я знаю, что это довольно простой вопрос, любая помощь будет оценена.
kinetic(,3)
- это просто недопустимый синтаксис Matlab. Вы не можете написать это. - person Oliver Charlesworth   schedule 12.10.2014