整数を1桁ずつ配列に読み込むMATLABの通常の方法は何ですか?
4桁の整数を配列に分割しようとしています。1234
[1 2 3 4]
これは、単一の整数に対して非常に簡単な方法です。
s = num2str(1234)
for t=length(s):-1:1
result(t) = str2num(s(t));
end
ただし、最もコンパクトな方法は次のとおりです。
'1234'-'0'
またはこれを試してください
result = str2num(num2str(1234)')'
使用できますarrayfun
arrayfun(@str2num, num2str(x))
再帰関数を使用したエレガントで効率的なソリューションを次に示します。
function d = int2dig(n)
if n >= 10
d = [int2dig(floor(n/10)),mod(n,10)];
else
d = n;
end