Find the maximum value and its location from a matrix using two nested loops

Hi,
Right now I have this matrix K
K =
-3 -8 6 -3 -8 6 9 24 -18
-5 10 -9 -5 10 -9 15 -30 27
8 4 9 8 4 9 -24 -12 -27
-9 -24 18 12 32 -24 3 8 -6
-15 30 -27 20 -40 36 5 -10 9
24 12 27 -32 -16 -36 -8 -4 -9
9 24 -18 -15 -40 30 0 0 0
15 -30 27 -25 50 -45 0 0 0
-24 -12 -27 40 20 45 0 0 0
I wonder how I can use two nested loops to find the maximum number and its location from this matrix.
It would be great if anyone can help me with this
Thank you very much :)

 채택된 답변

sixwwwwww
sixwwwwww 2013년 12월 8일
편집: sixwwwwww 2013년 12월 8일
you can do it as follow:
MaxValue = -Inf;
row = 0;
column = 0;
for i = 1:size(K, 1)
for j = 1:size(K, 2)
if K(i, j) > MaxValue
MaxValue = K(i, j);
row = i;
column = j;
end
end
end

댓글 수: 6

Please do not solve homework questions. Now Kantosa cannot submit this solution without cheating anymore and the effect for his learning experience is not helpful anymore.
Oh sorry but there was no homework tag with it. How can I know is it homework or user just asking question for learning? I thought that he is not sure that finding maximum is possible with two nested loops or not so I just showed that it is possible
This is the third time this person has asked this question. I suspected it was homework that's why I gave hints like in http://www.mathworks.com/matlabcentral/answers/109031#answer_117670, rather than an outright solution. The person accepted it so I don't know why it was asked again , and asked again without the homework tag even when I explicitly mentioned it. Kantosa, any response to that?
Yes it is a homework. I am looking for a way to solve it but not a solution. The reason I posted the question again is to find different ways to solve it (different hints). I am new here and not sure about how this work so I keep posting the question again. Sorry for any misunderstanding. Next time I will put the homework tag down.
But you didn't ask for other ways - you rigidly specified the way. The other, more MATLAB-ish way would be to use the max() function. Look at the two arguments it returns. You might also find ind2sub() helpful,
How could you make this a function with an output of the Max value?

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Khalid Mojallid
Khalid Mojallid 2019년 3월 26일
MaxValue = -Inf;
row = 0;
column = 0;
for i = 1:size(K, 1)
for j = 1:size(K, 2)
if K(i, j) > MaxValue
MaxValue = K(i, j);
row = i;
column = j;
end
end
end

댓글 수: 1

I'm guessing K would be the vector we are trying to find the max value for?

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

태그

아직 태그를 입력하지 않았습니다.

질문:

2013년 12월 8일

편집:

2021년 2월 8일

Community Treasure Hunt

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

Start Hunting!

Translated by