How do I vectorize each digit of an integer and store it as an array?

조회 수: 44 (최근 30일)
I have to convert an integer into a vector of all its digits. Example: 100---> [1 0 0]
function ans = int2vec(x)
t=regexp(num2str(x),'\d','match');
[];
arrayfun(@(i) [ans,str2num(t{i})],1:length(t));
end
Though this worked for me, is there a better solution.

채택된 답변

Stephen23
Stephen23 2018년 5월 8일
편집: Stephen23 2018년 5월 8일
>> num2str(100)-'0'
ans =
1 0 0
If you want all digits, regardless of position and role (e.g. exponent):
>> s = num2str(100);
>> s(isstrprop(s,'digit'))-'0'
ans =
1 0 0

추가 답변 (1개)

Stalin Samuel
Stalin Samuel 2018년 5월 8일

카테고리

Help CenterFile Exchange에서 Data Type Conversion에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by