join numbers in vector

6 visualizaciones (últimos 30 días)
gwar
gwar el 23 de Jul. de 2013
I have a row vector with 7 numbers, e.g. 13 30 44 12 44 23 12. I want to join all these numbers into a single number, or 13304412442312. I have not been able to find a method to do this. Can anyone please suggest a method to do this without using a for loop.

Respuesta aceptada

kjetil87
kjetil87 el 23 de Jul. de 2013
Editada: kjetil87 el 23 de Jul. de 2013
x=[13 30 44 12 44 23 12];
stringX=num2str(x);
stringX=stringX(stringX~=' '); % remove the space
x2=str2num(stringX);
  3 comentarios
kjetil87
kjetil87 el 23 de Jul. de 2013
agreed , int64 is better.
dpb
dpb el 23 de Jul. de 2013
Gives more dynamic range than double at cost of less flexible to other operations. Of course, OP will eventually run out of range there, too, if continues to increase the size of the vector...

Iniciar sesión para comentar.

Más respuestas (2)

Azzi Abdelmalek
Azzi Abdelmalek el 23 de Jul. de 2013
Editada: Azzi Abdelmalek el 23 de Jul. de 2013
a=[13 30 44 12 44 23 12]
b=strrep(num2str(a),' ','')
% This is a string, if you to get a number
b=str2num(strrep(num2str(a),' ',''))

dpb
dpb el 23 de Jul. de 2013
>> sscanf(sprintf('%d',v),'%lu')
ans =
13304412442312
>> whos ans
Name Size Bytes Class Attributes
ans 1x1 8 uint64
>> sscanf(sprintf('%d',v),'%li')
ans =
13304412442312
>> whos ans
Name Size Bytes Class Attributes
ans 1x1 8 int64
>>

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by