Trying To Put Code In A File

I copied this directly from the Matlab documentation, put it in a file named "test", then typed the name of that file in the interpreter. Syntax error. Incorrect use of := operator.
myProc:= proc(n)
begin
if n = 1 or n = 0 then
1
else
n * myProc(n - 1)
end_if;
end_proc:
Now what?

2 个评论

share the link of the documentation where you took from
Patrick Powers's answer moved here for consistency:
It's not online. It is in the Matlab documentation for "procedures."
I gave up on writing procedures and wrote a function instead, which worked.

请先登录,再进行评论。

回答(1 个)

madhan ravi
madhan ravi 2018-12-23
编辑:madhan ravi 2018-12-23
Turns out that you are using MUPAD (to use it type MUPAD in command window) it's different from MATLAB so basically it's (your code) just a function , so if you want to use it in matlab then see https://www.mathworks.com/help/symbolic/convert-mupad-notebooks-to-matlab.html this converts the MUPAD file to valid MATLAB file.
Plus you know how simple it is in matlab , it's just
factorial(n)
But if you want to know the equivalent syntax for your code in MATLAB then:
a = myProc(10) % function call ,this part should be in a separate file or directly used in command window
function a = myProc(n) % function definition ,this part should be in a separate file named myProc.m
if n == 1 || n == 0
a = 1;
else
a = n * myProc(n - 1);
end
end
Note: See function to know how it works.

类别

帮助中心File Exchange 中查找有关 Get Started with MuPAD 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by