how to find maximum or minimum element in a matrix?

example
a=5 b=8 c=2 d=6
x=[a b c d]
how to find minimum or maximum element of matrix x? the answer i want is its variable not its value. so the answer here is b and not 8

 Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 24 Oct 2012
Modifié(e) : Azzi Abdelmalek le 24 Oct 2012
a=5;b=8;c=2;d=6
x=[a b c d];
y={'a','b','c','d'};
[c1,idx1]=max(x);
[c2,idx2]=min(x);
max_x=y{idx1}
minx_x=y{idx2}

Plus de réponses (2)

function varname = max_of_vars(varargin)
[val, idx] = max([varargin{:}]);
varname = inputname(idx);
end
function varname = min_of_vars(varargin)
[val, idx] = min([varargin{:}]);
varname = inputname(idx);
end
Example:
a=5;b=8;c=2;d=6
max_of_vars(a, b, c, d)
min_of_vars(a, b, c, d)
This code is generalized to any number of variables, provided that each of them is scalar. If an expression is passed instead of a variable and that expression happens to be the maximum, then the empty string '' will be returned.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by