查看: 1811|回复: 2|关注: 0
打印 上一主题 下一主题

真人诈金花真假: [已解决] 为什么在 MATLAB 中我获得报错信息“无法执行赋值,因为左侧的索引与右侧的大小不兼容?!??

[复制链接]

MATLAB 基础讨论
版块优秀回答者

诈金花闷牌技巧教程 www.ycdqd.tw 30

主题

60

帖子

31

最佳答案
  • 关注者: 3
跳转到指定楼层
1#
设定英语情况下,报错信息为:

??? Subscripted assignment dimension mismatch.
??? In an assignment A(I) = B, the number of elements in B and
I must be the same.

MATLAB 基础讨论
版块优秀回答者

30

主题

60

帖子

31

最佳答案
  • 关注者: 3
2#
 楼主| 发表于 2019-9-26 16:45:16 | 只看该作者 |此回复为最佳答案
此报错发生在:当您尝试将元素分配给现有数组时,元素的大?。ㄎ龋┯胂钟惺椴患嫒荩ú幌嗟龋?。例如,以下代码段产生此报错:

  1. A = [1 2 3; 4 5 6];
  2. B = [7 8 9 10];
  3. A(2,:) = B
复制代码

其中,A是2乘3的矩阵,B是1乘4的矩阵。代码尝试将B赋值给A的第二列,此时等号右侧B有4个元素,等号左侧A的第二列有3个元素,个数不相等引起报错。为了正常运行,等号右侧也应该是3个元素,例如:

  1. B = [11 12 13];
  2. A(2,:) = B
复制代码

更详细的说明请参考:
https://www.mathworks.cn/help/matlab/math/matrix-indexing.html


答案来源:
www.mathworks.cn/matlabcentral/answers/93586-why-do-i-get-the-subscripted-assignment-dimension-mismatch-error-message
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

快速回复 诈金花闷牌技巧教程 返回列表