Why is my function not working?

function [y] = mysq(x) %UNTITLED Summary of this function goes here % Detailed explanation goes here y=x.^2; end

回答(1 个)

the cyclist
the cyclist 2019-10-31
编辑:the cyclist 2019-10-31
Is everything on a single line, as you posted it here? If so, then everything after the first "%" is a comment, and MATLAB will ignore it. If it is formatted like this:
function [y] = mysq(x)
% UNTITLED Summary of this function goes here
% Detailed explanation goes here
y=x.^2;
end
then it should work.
If that is not the issue, please give us more detail about what "not working" means. Does it return a result that you do not expect, or does it give an error? If the latter, what is the complete error message?

3 个评论

This is how it's formatted.
function [y] = mysq(x)
% UNTITLED Summary of this function goes here
% Detailed explanation goes here
y=x.^2;
end
When i "run" it this comes up.
function [y] = mysq(x)
Error: Function definition not supported in this context. Create functions in code file.
Ah. You should not just try to run that code in the command line. You need to create a separate file (call it mysq.m) with that code in it. Then you can call that function from the command line like
output = mysq([2 3 5 7])
And this is why it is hugely important, when someone says something does not work, to explain what did not work. Was there an error? If so, then what was the complete text of the error. This question was far easier to resolve when the error message was shown.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Entering Commands 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by