Matlab无效表达错误

时间:2012-04-26 16:50:54

标签: matlab sign

while  B(i,j,k) ~= 0
{ C = C + B(i,j,k);
  i++;
  j++;
  k++;
   }
end

我试图在double中添加mXnX3矩阵以获得(i,i,i)元素的总和,但上面的声明给出了matlab错误。而我似乎无法纠正它。帮助!

2 个答案:

答案 0 :(得分:2)

这很可能是错误,因为它的Matlab语法不正确。你看过the documentation吗?

要通过循环解决这个问题,你可以写:

C = 0;
for i=1:size(B,1)
   C = C + B(i,i,i);
end

要在“Matlab”中执行此操作,您需要编写

nn = size(B,1);
C = sum(B(1:(nn^2+n+1):end));

注意:以上所有假设B都是nxnxn。

如果您想获得所有元素的总和,您只需编写

即可
C = sum(B(:));

如果你真的想做一个三重循环,你可以写

C = 0;
[nI,nJ,nK]=size(B);
for i=1:nI
  for j=1:nJ
    for k=1:nK
       C = C + B(i,j,k);
    end
  end
end

答案 1 :(得分:1)

i++无效Matlab。大括号{}也没有。