turn 0 to 0.000

9 visualizzazioni (ultimi 30 giorni)
Chris E.
Chris E. il 26 Nov 2012
Well this is a formatting issue, how can I force any number to have a specified format? Example:
I have 1.23, I need 1.230
I have 0, I need 0.000
I have 0.1011, I need 0.101
I have 5.1019, I need 5.102
I have 20.002, I need 20.002 (stays the same)
I seem to have tried a few methods I found on-line, however still have not found one that works exactly this way. I would never exceed 99.999 or -99.999. Thanks, Chris
  1 Commento
Matt Fig
Matt Fig il 27 Nov 2012
Are you talking about the value of the number or the display of the number?
fprintf('%.17f\n',.1) % Shows all digits

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 26 Nov 2012
Use sprintf():
sprintf('%.3f', 0) % to command window.
outputString = sprintf('%.3f', 5.1019) % Sticks it in a string.
  1 Commento
Chris E.
Chris E. il 27 Nov 2012
Thanks this works great!

Accedi per commentare.

Più risposte (2)

Azzi Abdelmalek
Azzi Abdelmalek il 27 Nov 2012
Modificato: Azzi Abdelmalek il 27 Nov 2012
use fprintf
a=0;
fprintf('%5.3f\n',a)

Matt Fig
Matt Fig il 27 Nov 2012
You cannot really change the underlying value too much. But as far as a display:
A = [1.23,0,0.1011,5.1019,20.002];
fprintf('\t%.3f\n',A)

Categorie

Scopri di più su Data Import and Analysis in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by