while B(i,j,k) ~= 0
{ C = C + B(i,j,k);
i++;
j++;
k++;
}
end
我试图在 double 中添加一个 mXnX3 矩阵以获得 (i,i,i) 元素的总和,但上面的声明给出了一个 matlab 错误。我似乎无法纠正它。帮助!
这很可能是错误,因为它不是正确的 Matlab 语法。你读过文档吗?
要使用循环解决此问题,您可以编写:
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
i++
不是有效的 Matlab。大括号也不是{}
。