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 commentaire

Matt Fig
Matt Fig le 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

Connectez-vous pour commenter.

 Réponse acceptée

Image Analyst
Image Analyst le 26 Nov 2012

0 votes

Use sprintf():
sprintf('%.3f', 0) % to command window.
outputString = sprintf('%.3f', 5.1019) % Sticks it in a string.

Plus de réponses (2)

Azzi Abdelmalek
Azzi Abdelmalek le 27 Nov 2012
Modifié(e) : Azzi Abdelmalek le 27 Nov 2012

0 votes

use fprintf
a=0;
fprintf('%5.3f\n',a)
Matt Fig
Matt Fig le 27 Nov 2012

0 votes

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)

Catégories

En savoir plus sur Data Import and Analysis dans Centre d'aide et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by