# How to combine multiple numbers into 1 number?

3 views (last 30 days)
Hieu on 25 Feb 2023
Commented: Steven Lord on 25 Feb 2023
I have the numbers R1, R2, Zr1, that I want to fuse together into 24000 . Zr1 is an array, while R1 and R2 are double. I have tried strcat but it only produces 240 0 0 which is not the intended 24000
R1 = 2
R2 = 4
Zr1 = 0 0 0
Stephen23 on 25 Feb 2023
"Zr1 is an array, while R1 and R2 are double"
All doubles are arrays. Scalars are not a separate type, because in MATLAB everything is an array:

Stephen23 on 25 Feb 2023
Edited: Stephen23 on 25 Feb 2023
General solution:
R1 = 2;
R2 = 4;
Zr1 = [0,0,0];
V = [R1,R2,Zr1];
N = 10.^(numel(V)-1:-1:0) * V(:)
N = 24000
Steven Lord on 25 Feb 2023
Another way to generate the Q vector is with logspace.
Q = logspace(4, 0, 5)
Q = 1×5
10000 1000 100 10 1

Alan Stevens on 25 Feb 2023
Edited: Alan Stevens on 25 Feb 2023
Do you mean
R1 = 2; R2 = 4; Zr1 = [0 0 0];
R = R1*10^4+R2*10^3+Zr1(1)*10^2+Zr1(2)*10+Zr1(3)
R = 24000
Alternatively:
R1 = 2; R2 = 4; Zr1 = [0 0 0];
R = [R1, R2, Zr1]
R = 1×5
2 4 0 0 0
M = 10.^[4 3 2 1 0]
M = 1×5
10000 1000 100 10 1
R = M*R'
R = 24000

### Categories

Find more on Logical in Help Center and File Exchange

R2022b

### Community Treasure Hunt

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

Start Hunting!