while B(i,j,k) ~= 0
{ C = C + B(i,j,k);
i++;
j++;
k++;
}
end
(i,i,i) 要素の合計を取得するために double で mXnX3 行列を追加しようとしていますが、上記の宣言により 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 ではありません。どちらもブレースではありません{}
。