Need help with my function

2 次查看(过去 30 天)
Richard
Richard 2013-7-29
How can I input my own function? I type function [dist,vel,acc]= free_fall(t)or anything just involving the word function and receive an error message reading "FUNCTION keyword use is invalid here. This might cause later messages about END". I save the function as the script. Can not seem to figure it out.

采纳的回答

Jan
Jan 2013-7-29
编辑:Jan 2013-7-29
Function definitions are not allowed inside the Command Window or insider an M-script file, but only inside a function-M-file. You can recognize them by the first word "function".
The functions are defined either as sub-functions, after the main function has finished, or as nested function inside another function.
function Out = MainFunction(In)
disp('I''m the main function');
Nested;
SubFunction;
Nested;
function Nested
disp('I''m nested'');
end
end
function SubFunction
disp('I''m the sub function');
end
If you use nested function or any function is closed by end, all functions in an M-file must be closed by a trailing end.

更多回答(1 个)

David Sanchez
David Sanchez 2013-7-29
function [dist,vel,acc]= free_fall(t)
% The code of your function here
...
...
% no need of adding "end"
  2 个评论
Richard
Richard 2013-7-29
No, I didn't place the end on my code that is what the error message reads. When I run the code it also reads "Function definitions are not permitted in this context". in the command window. Thanks for trying though.
David Sanchez
David Sanchez 2013-7-29
did you place your function in its own m-file, I mean, no any other code before the function declaration? Your error message is received when that is done. Functions has to be save in their own m-file.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Files and Folders 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by