matlab进行计算是总是出现:在赋值 A(I)=B 中,B 和 I 中的元素数目必须相同

2025-06-25 19:05:33
推荐回答(2个)
回答1:

循环语句中的

z(i)是z的第i个元素,matlab默认z(i)为一个数字,长度为1。后面赋值是一个行向量,得到的结果长度和x、y相同(长度201)
这造成等号左右的元素数目不同。
考虑z是一个矩阵,矩阵第一行存储i=1的结果。
你把赋值语句改成
for i=1:2
z(i,:)=c.*(d-x.^2................................
end
即可

回答2:

你就不能把错误的那一行放上来么。。。MATLAB应该提示是哪一句出了问题吧