split array

if A = [1234567891234567];===> size(A) = 1*1
in one cell
I want split it as each (8digit) in one cell as:
A = [12345678;91234567];=====> size(A)= 2*1

回答(3 个)

0 个投票

for i=1:(size(A(1,:))/2) B(1,:)=A(1,i); end for i=(size(A(1,:))/2):size(A(1,:)) B(2,:)=A(1,i); end try this.it may work

3 个评论

error
??? Subscript indices must either be real
positive integers or logicals.
for i=1:(size(A(1,:))/2) B(1,i)=A(1,i); end for i=(size(A(1,:))/2):size(A(1,:)) B(2,i)=A(1,i); end try this.it may work
1 comment
i was in hurry yesterday.thats why little mistake

请先登录,再进行评论。

A = 1234567891234567
B = reshape(num2str(A)-'0',[],2).'
Anew = B*10.^(size(B,2)-1:-1:0).'
Walter Roberson
Walter Roberson 2012-2-18

0 个投票

Your A is 16 digits long. You might not be able to store it accurately as a floating point number.

类别

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

提问:

2012-2-18

Community Treasure Hunt

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

Start Hunting!

Translated by