Representing a number as a matrix

Hi, I'm looking for how i would be able to seperate a number's digits and to then have these stored as a matrix. So for example if the number was 146, this would then be split such that matrix X = [1,4,6] Any help would be greatly appreciated. Thanks

 采纳的回答

For a non-negative integral value:
>> x = 146
x =
146
>> num2str(x) - '0'
ans =
1 4 6
Do you also need to somehow process non-integral values, etc?

1 个评论

Thanks. No I don't need to use non-intergrals at the moment, so that should be fine. Thanks again

请先登录,再进行评论。

更多回答(1 个)

One approach:
N = arrayfun(@str2num,sprintf('%i',146))
or (along the lines of James' answer)
N = sprintf('%i',146)-'0'

类别

帮助中心File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by