MATLAB中關于排序與求最大值的問題
關注:292 答案:3 手機版
解決時間 2021-02-04 17:16
提問者孤獨食人心
2021-02-03 16:34
K =
200 16
300 17
100 18
400 18
500 18
0 19
600 19
700 19
800 21
900 22
2300 22
1000 23
2200 23
1100 27
2100 27
1900 29
2000 29
1200 30
1800 30
1700 32
1300 33
1600 34
1400 35
1500 36
上面是一個矩陣,第一列是時刻,第二列是溫度,要找出最大溫度的時刻,在MATLAB中要怎麼操作,其實我們一看就知道是1500,但是要在MATLAB中操作的話該怎麼操作呢,請高手指教!!!!!
最佳答案
二級知識專家有你才幸福
2021-02-03 17:22
[max_temp, index] = max(K(:,2));
max_time = K(index, 1)
全部回答
1樓棄療尐钕
2021-02-03 19:07
一個小的程式設計,你讓每一列中前一個元素跟後一個做比較,讓後取較大數,讓它跟後面的繼續比較。那麼最後得到的數,其實就是這一列中最多的數。如果你說你沒有學過matlab,或者C語言,那麼就沒辦法了
2樓何必執着
2021-02-03 18:02
>> k=[ 200 16
300 17
100 18
400 18
500 18
0 19
600 19
700 19
800 21
900 22
2300 22
1000 23
2200 23
1100 27
2100 27
1900 29
2000 29
1200 30
1800 30
1700 32
1300 33
1600 34
1400 35
1500 36]
>>m=max(k(:,2));
>> [s,t]=size(k);
>> for i=0:s
for j=0:t
if k(s,t)==m
x=k(s,1);
end
end
end
>> disp(x)
1500
我要舉報
如以上資訊為低俗、色情、不良、暴力、侵權、涉及違法等資訊,可以點下面連結進行舉報!
推薦資訊
大家都在看