Merge array to a number

16 ビュー (過去 30 日間)
Raviteja
Raviteja 2011 年 10 月 9 日
I want to merge an array to a number. i.e., if
>>x=1:5;
do some operation on x and get the result like
>>y=12345
for that I have written this code...
x=1:5;
y=0;
for i=1:length(x)
y=y*10+x(i);
end
Is there any short way to do this ?

採用された回答

Andrei Bobrov
Andrei Bobrov 2011 年 10 月 9 日
str2double(sprintf('%d',x))

その他の回答 (2 件)

Zhao g-liang
Zhao g-liang 2011 年 10 月 9 日
what about this x=1:5; 10.^(x(end:-1:1)-1)*x'
  1 件のコメント
Walter Roberson
Walter Roberson 2011 年 10 月 9 日
Better to use
10.^(length(x)-1:1:0)*x.'
If the poster could rely upon x being consecutive digits then the poster could just use '0' + (x(1):x(end))

サインインしてコメントする。


Walter Roberson
Walter Roberson 2011 年 10 月 9 日
str2double(num2str(x))
  1 件のコメント
Raviteja
Raviteja 2011 年 10 月 9 日
Is this working?

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeMatrices and Arrays についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by