Error using function: Not enough input arguments.

1 view (last 30 days)
I get the following error every time i try to run a simple function
Not enough input arguments. My code is the following
function S = myfirstmatlab (n )
% gives the sum of the first n integers
S = 0; % start at zero
% The loop :
for i = 1: n % do n times
S = S + i; % add the current integer
end % end of the loop
Can someone help me to figure it out? The answers to similar questions did not help me.

Accepted Answer

John D'Errico
John D'Errico on 5 Aug 2016
Edited: John D'Errico on 5 Aug 2016
You don't RUN a function.
IMHO, run (or use of it from the menu) is the worst thing they ever introduced into MATLAB, in terms of newbies misusing the tool.
When you write a function, in order to use it, you need to use it at the command line, just as you use ANY OTHER FUNCTION.
So execute a line like this at the commandline:
S = myfirstmatlab(10);

More Answers (1)

Thorsten
Thorsten on 5 Aug 2016
Edited: Thorsten on 5 Aug 2016
You have to call the function with an argument n:
>> myfirstmatlab(4)
Note that you can write your program in a single line
S = sum(1:n);

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!