Maison > développement back-end > C++ > Comment puis-je arrondir avec précision des nombres à virgule flottante en C ?

Comment puis-je arrondir avec précision des nombres à virgule flottante en C ?

Mary-Kate Olsen
Libérer: 2024-12-28 09:04:10
original
476 Les gens l'ont consulté

How Can I Accurately Round Floating-Point Numbers in C  ?

Arrondir les valeurs à virgule flottante en C avec round()

Pour arrondir avec précision les valeurs à virgule flottante en C, on peut utiliser le polyvalent fonction round(). Cette fonction effectue l'opération d'arrondi en fonction de la règle d'arrondi spécifiée et est essentielle pour les scénarios dans lesquels les valeurs à virgule flottante doivent être arrondies avec précision.

Bien que C 98, la version antérieure de la norme C, ne dispose pas d'un fonction round(), on peut écrire sa propre implémentation. Une approche courante consiste à implémenter la règle d'arrondi à moitié, qui peut être réalisée avec le code suivant :

double round(double d) {
  return floor(d + 0.5);
}
Copier après la connexion

Cette implémentation reflète le comportement d'arrondi standard où les valeurs inférieures ou égales à -0,5 sont arrondies. vers le bas, tandis que les valeurs supérieures à -0,5 sont arrondies.

Il est important de noter que l'arrondi à moitié n'est pas la seule règle d'arrondi. L’arrondi au pair, par exemple, est une méthode alternative qui vise à éviter les biais et est préférée dans les scénarios impliquant des arrondis répétés. La mise en œuvre de l'arrondi au pair nécessite un algorithme légèrement plus complexe.

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