find max value in a Matrix using loops only
8 views (last 30 days)
Show older comments
Zed Ferch
on 10 Nov 2019
Commented: Zed Ferch
on 10 Nov 2019
hallo,
I can find only two max with this code. can you help me please to find all Max (more than 1 or 2) with the corrent code in this Matrix X=[1,2,3;7,1,9;4,9,6;9,8,7].
X=[1,2,3;7,1,9;4,9,6;9,8,7];
Max = -Inf;
row = 0;
column = 0;
row1 = 0;
column1 = 0;
for i = 1:size(X, 1)
for j = 1:size(X, 2)
if X(i, j) > Max
Max = X(i, j);
row = i;
column = j;
end
if X(i, j) >= Max
Max = X(i, j);
row1 = i;
column1 = j;
end
end
end
X
Max
row
column
row1
column1
1 Comment
dpb
on 10 Nov 2019
Find global maximum first, then find the matching locations. Save the location indices in arrays instead of named variables. Mimic the output of the builtin max function.
Accepted Answer
JESUS DAVID ARIZA ROYETH
on 10 Nov 2019
solution:
X=[1,2,3;7,1,9;4,9,6;9,8,7];
Max = -Inf;
row = [];
column = [];
for i=1:size(X,1)
for j=1:size(X,2)
if X(i,j)>=Max
Max=X(i,j);
end
end
end
for i=1:size(X,1)
for j=1:size(X,2)
if X(i,j)==Max
row(end+1)=i;
column(end+1)=j;
end
end
end
X
Max
row
column
More Answers (0)
See Also
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!