Calling a Script within another script?

406 次查看(过去 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 中查找有关 Entering Commands 的更多信息

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by