Rounding Numerical values in an array to decimal points
65 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
How can i round the values in the array to 2 decimasl places. The round functio n does not work with arrays how would i be able to get to the Expected output below?
Code:
a = [12.75687 44.8947584 55.2382 6.34758485]
round =(a,2)
Expected Output:
[12.76 44.89 55.24 6.35]
2 commentaires
dpb
le 18 Oct 2021
Perhaps OP is confusing the number of decimal places printed at the command line with the precision of the answer -- in
b = round(a,2)
b = 1×4
12.7600 44.8900 55.2400 6.3500
there are still four digits after the decimal displayed.
That is, of course, a fignewton of the format option selected in the command line and is not able to be changed other than for the relatively few available options -- "short", "long", ...
The one that might be of interest here for the specific case of two decimals is
>> a = [12.75687,44.8947584,55.2382,6.34758485];
b = round(a,2)
b =
12.7600 44.8900 55.2400 6.3500
>> format bank
>> b
b =
12.76 44.89 55.24 6.35
>>
But, it has the disadvantage for very large numbers that it is fixed format.
If it is needed to display a specific number of digits, one has to use one of the formatting options with fprintf or the like.
Réponses (0)
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!