Filter löschen
Filter löschen

How to add a string output to this function?

2 Ansichten (letzte 30 Tage)
Lorenz
Lorenz am 10 Jun. 2013
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 = +

Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 10 Jun. 2013
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

Weitere Antworten (1)

David Sanchez
David Sanchez am 10 Jun. 2013
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

Kategorien

Mehr zu Data Types finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by