Matlab矩阵运算问题

学习 时间:2026-04-04 20:43:39 阅读:8954
Matlab矩阵运算问题题目是英文的 跪求大神给code!可以提高悬赏谢谢!

最佳回答

顺心的心锁

悦耳的绿草

2026-04-04 20:43:39

这个问题我考虑了很长时间。 单就编写max_plus函数而言,非常简单,代码如下(根据题中要求,不需要检查矩阵维数是否正确):function C = maxplus(A, B)% C的行数与A行数相同,C列数与B列数相同for i = 1 : size(A, 1)    for j = 1 : size(B, 2)        C(i, j) = max( A(i, :) + B(:, j)。' );    endend 测试实例:>> A = round(rand(5, 3)*10)A =     7     1     8    10     7     7     8     4    10     7     1    10     5     6     1>> B = round(rand(3, 4)*10)B =     4     6     7     7     5     0    10     4     3     6     8     6>> C = maxplus(A, B)C =    11    14    16    14    14    16    17    17    13    16    18    16    13    16    18    16    11    11    16    12第二问有些难度:找到矩阵E,使得A⊙E=A。由于百度知道系统的排版缺陷,公式的表达比较困难,所以,具体的分析过程我就不写了。基本的思路就是,设定矩阵A和E的元素用aij、eij表示,则根据运算的规则,可以推导出,每个eij都应该满足一组不等式:eij <= [akj-aki], k=1。。n并且必须有一个等式成立,所以 eij 就是右侧向量的最小值,即E(i, j) = min( A(:,j) - A(:,i) );然后用一个简单的二重for循环即可计算出E:function B = E_maxplus(A)B = A;for i = 1:size(A,1)    for j = 1:size(A,2)        B(i, j) = min( A(:,j) - A(:,i) );    endend 举例:>> A = magic(4)A =    16     2     3    13     5    11    10     8     9     7     6    12     4    14    15     1>> B = E_maxplus(A)B =     0   -14   -13    -3   -10     0    -1   -13   -11    -1     0   -14    -3   -11   -10     0>> C = maxplus(A, B)C =    16     2     3    13     5    11    10     8     9     7     6    12     4    14    15     1第三问,是否存在F,使得A⊙F=E?这个我还没想明白。楼主可以尝试提高悬赏刺激一下,也许我能想出答案(不是敲诈,我觉得自己为回答这个问题的付出对得起最高的悬赏)。

最新回答共有2条回答

  • 老实的衬衫
    回复
    2026-04-04 20:43:39

    这个问题我考虑了很长时间。 单就编写max_plus函数而言,非常简单,代码如下(根据题中要求,不需要检查矩阵维数是否正确):function C = maxplus(A, B)% C的行数与A行数相同,C列数与B列数相同for i = 1 : size(A, 1)    for j = 1 : size(B, 2)        C(i, j) = max( A(i, :) + B(:, j)。' );    endend 测试实例:>> A = round(rand(5, 3)*10)A =     7     1     8    10     7     7     8     4    10     7     1    10     5     6     1>> B = round(rand(3, 4)*10)B =     4     6     7     7     5     0    10     4     3     6     8     6>> C = maxplus(A, B)C =    11    14    16    14    14    16    17    17    13    16    18    16    13    16    18    16    11    11    16    12第二问有些难度:找到矩阵E,使得A⊙E=A。由于百度知道系统的排版缺陷,公式的表达比较困难,所以,具体的分析过程我就不写了。基本的思路就是,设定矩阵A和E的元素用aij、eij表示,则根据运算的规则,可以推导出,每个eij都应该满足一组不等式:eij <= [akj-aki], k=1。。n并且必须有一个等式成立,所以 eij 就是右侧向量的最小值,即E(i, j) = min( A(:,j) - A(:,i) );然后用一个简单的二重for循环即可计算出E:function B = E_maxplus(A)B = A;for i = 1:size(A,1)    for j = 1:size(A,2)        B(i, j) = min( A(:,j) - A(:,i) );    endend 举例:>> A = magic(4)A =    16     2     3    13     5    11    10     8     9     7     6    12     4    14    15     1>> B = E_maxplus(A)B =     0   -14   -13    -3   -10     0    -1   -13   -11    -1     0   -14    -3   -11   -10     0>> C = maxplus(A, B)C =    16     2     3    13     5    11    10     8     9     7     6    12     4    14    15     1第三问,是否存在F,使得A⊙F=E?这个我还没想明白。楼主可以尝试提高悬赏刺激一下,也许我能想出答案(不是敲诈,我觉得自己为回答这个问题的付出对得起最高的悬赏)。

上一篇 怎样算房间面积的大小平时说的一间房子有多少平方米,是怎么样计算的

下一篇 石头旁一个番是什么字陈仓区pan溪镇的那个pan没有高手知道吗?