MATLAB Answers

# Number to matrix

77 views (last 30 days)
student on 9 Feb 2012
Edited: Cedric Wannaz on 8 Oct 2013
Hello!
I am very new to MatLab. I am wondering, what is the simplest way to convert a 5-digit number into a matrix of those 5 digits.
Thanks,
##### 3 CommentsShowHide 2 older comments
Andrei Bobrov on 10 Feb 2012
:)
fix(rem(TheNumber*10.^-(ceil(log10(TheNumber)):-1:1),1)*10)

Sign in to comment.

### Answers (2)

Walter Roberson on 9 Feb 2012
sprintf('%d', TheNumber) - '0'
is the simplest, but not the most efficient.
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

Benjamin Schwabe on 9 Feb 2012
You can do that by simply using the following code:
p = 12345; % define your number
pstr=num2str(p);
n=length(pstr);
v=zeros(n,1);
for k=1:n
v(k)=str2double(pstr(k));
end
It will work for all integer numbers. For non Integer numbers, the "." will be transformed into 'NaN'.
##### 2 CommentsShowHide 1 older comment
Walter Roberson on 10 Feb 2012
When you are dealing with single digits, subtracting the character '0' is much more efficient than str2double().

Sign in to comment.

### Community Treasure Hunt

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

Start Hunting!