Combining two number to one number
조회 수: 79 (최근 30일)
이전 댓글 표시
Dear Matlab users
Im facing the problem of combining two seperate numbers into one number. Let's say i have the number 1 and 2 and want to combine them in that order, resulting in 12. Another example could be 4 and 6, yielding 46, or 3, 6 and 7 yielding 367.. Is there any smart or simple way of doing this?
Thanks in advance, Poul
댓글 수: 0
채택된 답변
Chandra Kurniawan
2011년 11월 29일
a = 1;
b = 2;
c = 3;
result = strcat(num2str(a),num2str(b),num2str(c));
result = str2num(result);
댓글 수: 0
추가 답변 (2개)
Image Analyst
2014년 12월 28일
Use sprintf():
a = 1;
b = 2;
c = 3;
str = sprintf('%d%d%d', a, b, c) % If you want a string.
doubleStr = str2double(str) % If you want a double.
댓글 수: 1
Stephen23
2019년 1월 10일
Simpler and more versatile to just have one '%d' specifier:
str = sprintf('%d', a, b, c)
Poul Reitzel
2011년 11월 29일
댓글 수: 6
A C
2019년 5월 19일
hello, Image Analyst
I was talking about this code. It returns 367
b = [3 6 7]
out = b*10.^(numel(b)-1:-1:0)'
I thought this would look like this
out = [30 60 70].^[2; 1; 0]
but it returns a matrix.
Why are the two codes different. How does the first code return a single number?
Image Analyst
2019년 5월 19일
Well, it would be good if you had given that equation for "out" in your first post so we'd have known about it.
It's because the first vector is a row vector and the second is a column vector (because of the '). And you're using a recent version of MATLAB that does automatic expansion. Look up expansion here or in MATLAB to see what that means.
참고 항목
카테고리
Help Center 및 File Exchange에서 Logical에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!