Calling a Script within another script?

298 次查看(过去 30 天)
Since a similar question is posted on the forum, I have used the command run() as one of the members of the forum said, but It seems that it doesn't work here.
I am designing a code in a script that depending on the value of flag1 and flag2 values, it calls a script or the other one. This is the code:
flag1=0;
flag2=0;
problem='electric'; %this must be defined by the user
if problem=='electric'
flag1=1;
elseif problem=='mechanic'
flag2=1;
end
if flag1==1
run(ohm)
end
if flag2==1
run(programaultimate)
end
When I run this script, this is the error I get:
Depending on what the user puts in the "problem" line, the code will run the script called ohm or the script called programaultimate. The script I have posted, and those two scripts (ohm and programaultimate) are saved in the same folder. Also, I have tried calling them with the .m extension with an without the run command, and it doesn't work. What am I doing wrong? How can I achieve that?
Thank you very much

采纳的回答

Bjorn Gustavsson
Bjorn Gustavsson 2021-1-23
This you can do this way:
if flag1 == 1
ohm
end
if flag2 == 1
programaultimate
end
HTH
  1 个评论
ErikJon Pérez Mardaras
Yes, I tried that and it didn't work. The reason for that is that I had a little error in the ohm script, that's why it didn't work. Now that I fixed the issue, this is the correct way of calling scripts within scripts.
Thank you!!

请先登录,再进行评论。

更多回答(1 个)

Mario Malic
Mario Malic 2021-1-23
编辑:Mario Malic 2021-1-23
Enclose your script name in quotation marks.
Edit: with the file extension.
run("ohm.m")
  1 个评论
ErikJon Pérez Mardaras
Thanks for your reply!
If I put run("ohm") this error appears:
And if I put only "ohm", this appears on the command window but it doesn't execute the script:

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by