MATLAB Answers

Write a function called minimax that takes M, a matrix input argument and returns mmr, a row vector containing the absolute values of the difference between the maximum and minimum valued elements in each row. As a second output argument called mmm,

503 ビュー (過去 30 日間)
Sahil Deshpande
Sahil Deshpande 2020 年 5 月 30 日
編集済み: Stephen Cobeldick 2021 年 6 月 8 日 13:15
Write a function called minimax that takes M, a matrix input argument and returns mmr, a row vector containing the absolute values of the difference between the maximum and minimum valued elements in each row. As a second output argument called mmm, it provides the difference between the maximum and minimum element in the entire matrix. See the code below for an example:
>> A = randi(100,3,4) %EXAMPLE
A =
66 94 75 18
4 68 40 71
85 76 66 4
>> [x, y] = minimax(A)
x =
76 67 81
y =
90
%end example
%calling code: [mmr, mmm] = minimax([1:4;5:8;9:12])
My answer to this:
function [mmr,mmm] = minimax(M)
mmr = abs(max(M.')-min(M.'));
mmm = max(max(M)) - min(min(M));
This is shortest code I could write. What do you guys think of this?
  7 件のコメント
Chandan Kumar
Chandan Kumar 2021 年 2 月 23 日
this code dont work for me so i did some changes and now its like this and now its good for me.
function [mmr,mmm] = minimax(M)
mmr = abs(max(M.')-min(M.'))
mmm = max(M,[],'all')-min(M,[],'all')
end

サインインしてコメントする。

回答 (8 件)

Prasad Reddy
Prasad Reddy 2020 年 5 月 30 日
function [mmr,mmm] = minimax(M)
a=max(M');
b=min(M');
mmr=a-b;
c=max(a);
d=min(b);
mmm=c-d;
end
% This is what i came up with. Please give a upthumb if it works.

Ahmed Salmi
Ahmed Salmi 2020 年 7 月 17 日
function [mmr,mmm]=minimax(m)
mmr=max(m')-min(m');
mmm=max(m,[],'all')-min(m,[],'all');
end
or
function [mmr,mmm]=minimax(m)
a=max(m');
b=min(m');
mmr=a-b;
c=max(m,[],'all');
d=min(m,[],'all');
mmm=c-d;
end
  3 件のコメント
Imane Tahar
Imane Tahar 2020 年 11 月 29 日
تقدر تشرحلي الكود تبعك

サインインしてコメントする。


Rushi Auti
Rushi Auti 2020 年 7 月 31 日
function [mmr,mmm] = minimax(M)
a = max(M,[],2);
b = min(M,[],2);
c= a-b;
d = c';
mmr = c'
e = max(M,[],'all');
f = min(M,[],'all');
mmm = e-f
  10 件のコメント
Wenceslao Jr Sevilla
Wenceslao Jr Sevilla 2020 年 11 月 7 日
@rushi I got my student account with the help of coursera

サインインしてコメントする。


Harry Virani
Harry Virani 2020 年 8 月 12 日
function [mmr, mmm] = minimax(input)
matrix = [input];
maxr = max(matrix.');
minr = min(matrix.');
mmr = maxr - minr;
maxm = max(maxr);
minm = min(minr);
mmm = maxm - minm;
end
  1 件のコメント
Stephen Cobeldick
Stephen Cobeldick 2020 年 8 月 17 日
Fails for any matrix with only one column:
>> minimax([1;2;3])
ans = 2

サインインしてコメントする。


durgesh patel
durgesh patel 2021 年 1 月 4 日
function [mmr , mmm] = minimax(M)
mmr = max(M') - min(M');
mmm = max(M,[],'all')- min(M,[],'all');
end
  1 件のコメント
Stephen Cobeldick
Stephen Cobeldick 2021 年 1 月 4 日
Fails for any matrix with only one column:
minimax([1;2;3])
ans = 2

サインインしてコメントする。


Shamith Raj Shetty
Shamith Raj Shetty 2021 年 1 月 4 日
function [mmr,mmm] = minimax(M)
N = M';
mmr = max(N)-min(N);
mmm = max(max(N))-min(min(N));
  1 件のコメント
Rik
Rik 2021 年 1 月 4 日
Your function fails for column vectors.
M = [1;2;3];
minimax(M) % ans = [0,0,0]
ans = 2
M=[1:4;5:8;9:12];
minimax(M) % ans = [3,3,3]
ans = 1×3
3 3 3
Also, what is the point of posting this answer? What does it teach? Why should it not be deleted?

サインインしてコメントする。


Francisco Moto
Francisco Moto 2021 年 2 月 6 日
  2 件のコメント
Stephen Cobeldick
Stephen Cobeldick 2021 年 2 月 6 日
@Francisco Moto: your function does not do what your assignment requires. In particular:
  • Your function accepts one input. It then ignores this input completely.
  • You have hard-coded values for one specific matrix. The assignment requests a general solution.
Most of the operations in your function are not used for anything.

サインインしてコメントする。


Balakrishna Peram
Balakrishna Peram 2021 年 6 月 8 日 12:40
編集済み: Stephen Cobeldick 2021 年 6 月 8 日 13:15
on a General sense this should be the answer
function [mmr,mmm] = minimax(M)
mmr=abs(max(M,[],2)-min(M,[],2))
mmm=max(M,[],'all')-min(M,[],'all')
end

Community Treasure Hunt

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

Start Hunting!

Translated by