How to access each digit of a number in matlab without converting it into string?

7 Ansichten (letzte 30 Tage)
How to access each digit of a number in matlab?

Antworten (2)

Stephen23
Stephen23 am 11 Jul. 2015
Bearbeitet: Stephen23 am 11 Jul. 2015
>> A = 54321;
>> rem(floor(A./(10.^(floor(log10(A)):-1:0))),10)
ans =
5 4 3 2 1
>> A = 918287465;
>> rem(floor(A./(10.^(floor(log10(A)):-1:0))),10)
ans =
9 1 8 2 8 7 4 6 5
But converting to a string first will be faster and simpler:
>> A = 918287465;
>> int2str(A)-'0'
ans =
9 1 8 2 8 7 4 6 5

Ashmil Mohammed
Ashmil Mohammed am 11 Jul. 2015
You may use a foor loop and keep on dividing the number with 10.Use the remainder(modulo operator).

Kategorien

Mehr zu Numeric Types finden Sie in Help Center und File Exchange

Tags

Noch keine Tags eingegeben.

Community Treasure Hunt

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

Start Hunting!

Translated by