how rounde no. if third digit after floating more than 5

3 vues (au cours des 30 derniers jours)
huda nawaf
huda nawaf le 9 Avr 2013
hi, I want raounded a number, so I read this link about that http://www.mathworks.com/matlabcentral/answers/37262 But in this case , it rounde any no. ,while I want rounde number meet a condition. for example:
0.2371 be 0.2400
or
0.4546 be 0.4600
but this number 0.2330 , must be not equal 0.2400, must be the same i.e I want round number if the third digit after floating point equal or more than 5
Thanks in advance
  2 commentaires
Walter Roberson
Walter Roberson le 9 Avr 2013
Then why would 0.4546 round to 0.4600 and not to .4500, considering that the third digit is not equal or more than 5 ?
Are you wanting to do this numerically or for display purposes?
huda nawaf
huda nawaf le 10 Avr 2013
thanks, I supposed 0.4546 is equal 0.4550.
currently, I want it just for display.

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 10 Avr 2013
sprintf('%.2f00', round(N * 100) / 100)
Though I admit to being puzzled as to why you want the misleading '00' at the end, why you want 0.2400 instead of 0.24
  1 commentaire
huda nawaf
huda nawaf le 11 Avr 2013
no , I mean 0.24
thanks, sprints works

Connectez-vous pour commenter.

Plus de réponses (1)

Jan
Jan le 10 Avr 2013
If you want it just for displaying, what about:
sprintf('%.3f\n', [0.2371, 0.4546])
I'd definitly omit the trilaing zero, because it is not only confusing, but wrong.

Catégories

En savoir plus sur Dimensionality Reduction and Feature Extraction dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by