How to add a string output to this function?

Is it possible to add an ouptput, which says what operation made the function, to this following function?
function [op] = operation( A,B )
X=[A+B; A-B; A/B; A*B; B-A; B/A;]
Y=X(randperm(6),:)
if Y(1,1)>0 && Y(1,1)==int16(Y(1,1))
op=Y(1,1);
else
operation(A,B)
end
end
For example,
EDU>> operation(4,2)
ans=
6
The output is 6, wa all knows that the function did 4+2=6, but how to add the output '+' . For example output:
op = 6 s = +

 采纳的回答

function [op,op1] = operation( A,B )
X=[A+B; A-B; A/B; A*B; B-A; B/A;];
o={'plus','minus','div','prod','iminus','idiv'}
ii=randperm(6)
op1=o{ii(1)};
Y=X(ii,:);
if Y(1,1)>0 && Y(1,1)==int16(Y(1,1))
op=Y(1,1);
else
[op,op1]=operation(A,B);
end
end

更多回答(1 个)

function [op,s] = operation( A,B )
% your code here
s = '+'; % or whatever you want to be the string
Use a switch/case to choose among your options

类别

帮助中心File Exchange 中查找有关 App Building 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by