How to add one digit to another digits?

1 visualizzazione (ultimi 30 giorni)
For example, I have a number b=5; and i need to add it by another digits, for example 1234 and get the answer 12345. Code may show like: set(handles.text1,'string',1234+b) An error is "1234+b" and i don't know how format it that one digit adds to another digits. Thanks in advance.

Risposta accettata

Paulo Silva
Paulo Silva il 1 Mar 2011
strcat('1234','5')
you can convert any number to string with num2str or other similar function
strcat('1234',num2str(5))
b=5;
strcat('1234',num2str(b))

Più risposte (1)

Walter Roberson
Walter Roberson il 1 Mar 2011
The answer to your question as phrased is:
set(handles.text1, 'string', 1234*10^max(1,ceil(log10(b+1))) + b)
I would suggest, though, that you instead consider
set(handles.text1, 'string', sprintf('%d%d', 1234, b))
EDIT: put in max() to correct for the possibility that b is 0.
  4 Commenti
Eggo Ogge
Eggo Ogge il 2 Mar 2011
Can I ask one more question? If there is not digits, but string, i have something like '=a21:' and by this add hexadecimal number.
g=2F4
sprintf('%s%x',=a21:,g). Can it be something like that?
Walter Roberson
Walter Roberson il 2 Mar 2011
sprintf('%s%s', '=a21:', '2F4');
Or more simply
['=a21:', '2F4']
It is not possible to create a _numeric_ value in hex format.
Perhaps, though, you might like to use
sprintf('%s%x', '=a21:', hex2dec('2F4'))

Accedi per commentare.

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by