How to Concatenate two large numbers in Matlab

Hello everyone, This could come as a very basic question. I'm trying to concate 2 large numbers. For example: 5602007248 and 5602007720. The answer should be 56020072485602007720.
Currently, i'm trying converting to str and using strcat then converting back to num, but that doesnt seem to work somehow.
Help really appreciated. Thanks Raj

 Respuesta aceptada

Matt J
Matt J el 26 de Nov. de 2012
Editada: Matt J el 26 de Nov. de 2012
str2num(sprintf('%d%d',5602007248,5602007720))

Más respuestas (2)

Muruganandham Subramanian
Muruganandham Subramanian el 26 de Nov. de 2012

0 votos

a=10; b=20;
a1=num2str(a);
b1=num2str(b);
c=strcat(a1,b1)

4 comentarios

Rajesh
Rajesh el 26 de Nov. de 2012
Hello Muruganadham, This solution works for small numbers as you mentioned in your answer, the problem is that when i use num2str(5602007720) and num2str(5602007720)... in both cases the answer comes as 5.60201e+009... which is not correct... and the appending these 2 numbers are not the actual concat of the original numbers...
Rajesh
Rajesh el 26 de Nov. de 2012
sorry the example numbers are 5602007248 and 5602007720... typo in my cooment above...
It's working fing fine.. If you stil have a doubt you can compare by ur expected and caluculated by 'strcmp'.I have tried that too..
Rajesh
Rajesh el 26 de Nov. de 2012
The problem is that when i use num2str for a large number, it rounds the number and the final result wasnt the same, but the solution by Matt works great for large numbers.
Thanks for the response Muruganandham.

Iniciar sesión para comentar.

Matt J
Matt J el 26 de Nov. de 2012
n=floor(log10(5602007720));
10^(n+1)*5602007248 + 5602007720

Categorías

Más información sobre Creating, Deleting, and Querying Graphics Objects en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 26 de Nov. de 2012

Community Treasure Hunt

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

Start Hunting!

Translated by