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 Comment

What do you mean by "it's not working"? I think it does

Sign in to comment.

Answers (1)

the cyclist
the cyclist on 31 Oct 2019
Edited: the cyclist on 31 Oct 2019
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 Comments

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.

Sign in to comment.

Categories

Tags

Asked:

on 31 Oct 2019

Commented:

on 31 Oct 2019

Community Treasure Hunt

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

Start Hunting!