Как найти максимальный элемент и его индекс в матрице с помощью функции max? - PullRequest
0 голосов
/ 29 мая 2019

Программа не правильно считает максимум

clc   
A = [   13 54 21 ;
        16 69 13 ; 
        22 23 32];

[r,c,v] = find(A == max(A(:)));

disp(['max ',num2str(v)])
disp(['index ',num2str([r,c])])

Программа не правильно рассчитывает максимум, но индексы верны

max 1 - false, должно быть 69 || индекс 2 2 - верно

1 Ответ

0 голосов
/ 29 мая 2019
%For r2018b and later
[val,idx] = max(A,[],'all');
%For earlier versions
[val,idx] = max(A(:));

Максимальное значение элемента: val, val == A (idx).Для данного синтаксиса val и idx гарантированно будут числами, а не векторами или матрицами.Если вы хотите подписки на строки и столбцы, используйте функцию ind2sub

[r,c] = ind2sub(size(A), idx);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...