Goto command in matlab: Undefined function 'goto' for input arguments of type 'double'"

4 views (last 30 days)
I am in need of using goto command in matlab. I came to know that there is no goto command in matlab. But there are programs that run using goto command (got from net) where i am getting the output.
Example 1
a = 5;
a = a - 1;
disp(a)
if a > 0
goto(4)
return
end
Example 2
a = 5;
if a == 5
goto(9)
return
else
goto(12)
return
end
disp('a equals five')
goto(13)
return
disp('a does not equal five')
For Example 1 and 2 i'm able to get the output. But when i am using in my program goto(170) i am getting an error "Undefined function 'goto' for input arguments of type 'double'".
Can somebody help me. Thanks in ADVANCE...!
  9 Comments
José-Luis
José-Luis on 25 Sep 2014
I recently had to modify some FORTRAN code that used goto and I am still reeling from the experience. Spaghetti code is an apt name.
There are cases where its use is justified, for instance to escape from nested loops. Using a goto will make for much cleaner code than setting flags all over the place. However the goto construct the OP mentioned is not native Matlab.
jeffin
jeffin on 25 Sep 2014
Edited: jeffin on 25 Sep 2014
Thanks to all the authors who responded me well. @Kelly Kearney , @Stephen Cobeldick, @José-Luis , @Iain , @Sean de Wolski. i was able to slove the problem without goto function.

Sign in to comment.

Accepted Answer

Sean de Wolski
Sean de Wolski on 25 Sep 2014
MATLAB does not have a goto function. Use regular functions instead.

More Answers (1)

Iain
Iain on 25 Sep 2014
Ok, so you've downloaded a function "goto" from the file exchange, and it's probably just using "eval" on every line from the one you tell it, to the end of the function. (This is an orgy of bad programming practice.)
To use it, you need to make sure that the goto.m (or goto.p) file is on your matlab path:
addpath('C:\This is where I keep bad m files\')

Categories

Find more on Entering Commands in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!