Maison > développement back-end > C++ > Comment puis-je tronquer, et non arrondir, des valeurs décimales à un nombre spécifique de places ?

Comment puis-je tronquer, et non arrondir, des valeurs décimales à un nombre spécifique de places ?

Mary-Kate Olsen
Libérer: 2025-01-17 21:36:31
original
281 Les gens l'ont consulté

How Can I Truncate, Not Round, Decimal Values to a Specific Number of Places?

Tronquer le nombre de décimales avec précision pour éviter les arrondis

Lors du traitement de valeurs numériques, nous devons parfois tronquer les décimales à un nombre spécifié de chiffres pour éviter les erreurs causées par les arrondis. Ce n'est pas une tâche facile, comme le montre l'exemple de l'article, en tronquant 3,4679 à deux décimales, de nombreuses méthodes obtiendront le résultat de 3,47.

Une méthode fiable consiste à utiliser la troncature mathématique, qui supprime simplement tous les nombres après la précision spécifiée. Ceci peut être réalisé en utilisant la formule suivante :

<code>value = Math.Truncate(100 * value) / 100;</code>
Copier après la connexion

La formule multiplie d'abord la valeur par 100 et déplace la virgule décimale de deux places vers la droite. Ensuite, utilisez la fonction Truncate pour tronquer la partie décimale, en supprimant tous les chiffres après la virgule décimale. Enfin, divisez le résultat par 100 pour revenir au nombre de décimales d'origine.

En utilisant cette formule, 3,4679 peut être tronqué à 3,46 :

<code>value = Math.Truncate(100 * 3.4679) / 100;</code>
Copier après la connexion

Il convient de noter qu'en raison des limites de l'arithmétique informatique, les fractions représentées par des nombres à virgule flottante, tels que 0,1 ou 0,2, peuvent ne pas être complètement exactes. Par conséquent, les différences potentielles de précision doivent être traitées avec prudence lorsque l’on travaille avec de telles valeurs.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal