How to add a string output to this function?

2 次查看(过去 30 天)
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 = +

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2013-6-10
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 个)

David Sanchez
David Sanchez 2013-6-10
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

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by