How to concatenate the rounded digits of a number and a string?

5 Ansichten (letzte 30 Tage)
Hi everyone,
I am trying to concatenate a rounded number (in the 2nd digit after decimal) and string value, so that:
x= 1.361620214248647
star = '***'
xstar = sprintf('%d%s',round(x,3,'significant'), star)
I would expect the output to be 1.36***, rather than 1.360000e+00***
  2 Kommentare
Stephen23
Stephen23 am 12 Okt. 2018
Why so complex? sprintf does rounding for you:
>> sprintf('%.2f%s',x,star)
ans =
1.36***

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

madhan ravi
madhan ravi am 12 Okt. 2018
Bearbeitet: madhan ravi am 12 Okt. 2018
xstar=sprintf('%.2f%s',round(x,3,'significant'),star)

Weitere Antworten (1)

KALYAN ACHARJYA
KALYAN ACHARJYA am 12 Okt. 2018
x=1.361620214248647;
star='***';
xstar=sprintf('%f%s',round(x,3,'significant'),star)
  2 Kommentare
gsourop
gsourop am 12 Okt. 2018
Hi there,
Thank you for answering my question. Nevertheless, the answer I get 1.360000***, but I would expect 1.36***, instead.
KALYAN ACHARJYA
KALYAN ACHARJYA am 12 Okt. 2018
x=1.361620214248647;
star='***';
xstar=sprintf('%.2f%s',round(x,2),star)

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Fourier Analysis and Filtering finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by