How can i find the maximum of three variables?

248 ビュー (過去 30 日間)
Carole
Carole 2012 年 11 月 27 日
編集済み: Sarah Crimi 2018 年 11 月 16 日
Hi, I have to find the maximum of three variables A, B, C and store the result in D. thanks
  2 件のコメント
Sara Hafeez
Sara Hafeez 2012 年 11 月 30 日
use max. d=max(a,b,c)
Jan
Jan 2012 年 11 月 30 日
Have you tried this, Sara?
d = max(2,3,4)
According to the help text this fails.

サインインしてコメントする。

回答 (5 件)

Matt J
Matt J 2012 年 11 月 27 日
D=max([A,B,C]);
  2 件のコメント
Jan
Jan 2012 年 11 月 27 日
I assume, this is a homework question.
Matt J
Matt J 2012 年 11 月 27 日
I suppose. Can't be worth more than 1 point, though...

サインインしてコメントする。


Jan
Jan 2012 年 11 月 27 日
How would you find the maximum of two variables?
docserach maximum
Then if you have the maximum of two variables, you can compare it to the third one.

pshymn
pshymn 2017 年 4 月 13 日
編集済み: pshymn 2017 年 4 月 13 日
maybe, i am a little late, but i experienced the same problem. here is my solution. it works, tried. function which finds maximum of three variable.
function [p] = MAX(g,h,j)
if g>h && g>j
p=g;
elseif h>g && h>j
p=h;
else
p=j;
end
  1 件のコメント
Walter Roberson
Walter Roberson 2017 年 4 月 13 日
That code assumes scalar values. It also assumes no nan values.

サインインしてコメントする。


Image Analyst
Image Analyst 2012 年 11 月 27 日
In general, for A, B, and C being numerical arrays of any size (possibly different than each other):
% Define 3 double matrixes of different sizes
A = rand(3);
B = rand(4);
C = rand(5);
% Now get the max overall
D = max([A(:), B(:), C(:)]) % Note use of (:) to turn arrays into vectors.
If they're cell arrays or structures though, let us know because that would be different.
  1 件のコメント
Jan
Jan 2012 年 11 月 28 日
If A, B, C hav different sizes, [A(:), B(:), C(:)] fails. But [A(:); B(:); C(:)] with the semicolons for vertical concatenation works.

サインインしてコメントする。


Sarah Crimi
Sarah Crimi 2018 年 10 月 5 日
編集済み: Sarah Crimi 2018 年 10 月 5 日
if it is vectors of different sizes, you would have to do max(max(a),max(b)),max(max(b),max(c)). So, it takes max of the first and second vectors and compares the values, and max of the second and third vectors, then takes the max of those two numbers.
  2 件のコメント
Stephen23
Stephen23 2018 年 10 月 5 日
編集済み: Stephen23 2018 年 10 月 5 日
"if it is vectors of different sizes you would have to do..."
Or you can just call max once (as Jan Simon showed earlier):
max([a(:);b(:);c(:)])
Sarah Crimi
Sarah Crimi 2018 年 11 月 16 日
編集済み: Sarah Crimi 2018 年 11 月 16 日
Oh yes, I see. This makes it into one vector then takes the max.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by