我正在使用Matlab。
我有一个主要功能main.m
。我有两组m文件,名为:
Set A = {Area_triangle.m, Perimeter_triangle.m}
Set B = {Area_square.m, Perimeter_square.m}
是否有任何方法可以实现main(triangle)
可以在集合A中执行m文件,而main(square)
可以在集合B中执行m文件?
提前致谢
答案 0 :(得分:2)
要运行存储在m文件中的Matlab脚本,可以使用run
。使用switch语句,可以很容易地确定应该使用哪个集合。然后我们可以迭代给定集合中的所有文件并执行脚本。
可以使用main('triangle')
和main('square')
调用以下函数:
function main(shape)
A = {'Area_triangle.m', 'Perimeter_triangle.m'};
B = {'Area_square.m', 'Perimeter_square.m'};
switch shape
case 'triangle'
S = A;
case 'square'
S = B;
otherwise
error('Shape not defined!');
end
for i = 1:length(S)
run(S{i})
end