Matlab попробуй написать функцию max

Я пытаюсь написать максимальную функцию Matlab:

B = max(A,B);

Это правильно?

for i=1:size(A,1)
    for j=1:size(A,2)
       if A(i,j) > B(i,j)
         B(i,j) = A(i,j);
       end
    end
end

спасибо!


person Alon Shmiel    schedule 09.05.2012    source источник
comment
Что произошло, когда вы протестировали его?   -  person Paul R    schedule 09.05.2012


Ответы (1)


если вы имеете в виду, что B = max(A,B) должен выводить матрицу, содержащую по каждому индексу (i,j) наибольшее из A(i,j) или B(i,j), то да, это правильно (если вы снабдите его двумя- размерные матрицы A и B с size(A)>=size(B) )

Однако стандартная функция max работает не совсем так. Например, он также может обрабатывать ввод матрицы большего размера, вы можете указать, по какому измерению вы хотите рассчитать максимум,...

person Gunther Struyf    schedule 09.05.2012