Maison  >  Article  >  développement back-end  >  arrondi de la division du Golang

arrondi de la division du Golang

PHPz
PHPzoriginal
2023-05-10 10:23:063255parcourir

Golang Division Rounding

Golang est un langage de programmation très populaire qui fournit de nombreuses fonctions mathématiques pratiques, notamment la division entière et la division en virgule flottante. Dans cet article, nous explorerons comment effectuer une division et un arrondi dans Golang, c'est-à-dire comment effectuer une division et un arrondi.

Division entière

Dans Golang, la division entière utilise l'opérateur /, qui supprimera directement la partie décimale et renverra une valeur entière. Par exemple, le code suivant affichera 3 :

fmt.Println(10/3)

Cette forme de division est souvent appelée « division tronquée » ou « division entière » car elle renvoie la partie entière du résultat et ignore la partie fractionnaire.

Mais que devons-nous faire si nous voulons arrondir au supérieur ou à l'inférieur après la division ? Nous pouvons utiliser le package mathématique de la bibliothèque standard pour implémenter de telles opérations.

Arrondir

Arrondir fait référence à l'arrondi d'une valeur décimale à l'entier le plus proche, par exemple :

4.1  -> 5
-4.1 -> -4

Golang fournit la fonction math.Ceil, qui peut implémenter l'arrondi. math.Ceil est une fonction à virgule flottante intégrée qui arrondit un nombre à virgule flottante x à l'entier le plus proche. Par exemple, le code suivant arrondira le résultat de 10/3 à 4 :

import "math"
fmt.Println(math.Ceil(float64(10)/float64(3)))

Dans cet exemple, nous convertissons les entiers 10 et 3 en nombres à virgule flottante et les passons comme arguments à la fonction math.Ceil. La fonction math.Ceil renvoie une valeur float64, que nous devons convertir en int ou en d'autres types pour d'autres opérations.

Arrondir vers le bas

L'arrondi vers le bas fait référence à l'arrondi d'une valeur décimale à l'entier le plus proche, par exemple :

4.9  -> 4
-4.9 -> -5

Golang fournit la fonction math.Floor, qui peut implémenter l'arrondi vers le bas. math.Floor est une fonction à virgule flottante intégrée qui arrondit un nombre à virgule flottante x à l'entier le plus proche. Par exemple, le code suivant arrondira le résultat de 10/3 à 3 :

import "math"
fmt.Println(math.Floor(float64(10)/float64(3)))

Dans cet exemple, nous convertissons les entiers 10 et 3 en nombres à virgule flottante et les passons comme arguments à la fonction math.Floor. La fonction math.Floor renvoie une valeur float64, que nous devons convertir en int ou en d'autres types pour d'autres opérations.

Arrondi

L'arrondi fait référence à l'arrondi d'une valeur décimale à l'entier le plus proche, par exemple :

4.1  -> 4
4.5  -> 5
4.9  -> 5
-4.1 -> -4
-4.5 -> -4
-4.9 -> -5

Golang fournit la fonction math.Round, qui peut réaliser l'arrondi. math.Round est une fonction à virgule flottante intégrée qui arrondit un nombre à virgule flottante x à l'entier le plus proche. Par exemple, le code suivant arrondira le résultat de 10/3 :

import "math"
fmt.Println(math.Round(float64(10)/float64(3)))

Dans cet exemple, nous convertissons les entiers 10 et 3 en nombres à virgule flottante et les passons comme arguments à la fonction math.Round. La fonction math.Round renvoie une valeur float64, que nous devons convertir en int ou en d'autres types pour d'autres opérations.

Résumé

Dans Golang, lors de l'utilisation de l'opérateur / pour la division entière, la partie décimale sera directement tronquée et la valeur entière sera renvoyée. Si nous devons effectuer des divisions et des arrondis, nous pouvons utiliser les fonctions du package math : fonctions math.Ceil, math.Floor et math.Round pour implémenter des opérations telles que l'arrondi vers le haut, l'arrondi vers le bas et l'arrondi.

Ce qui précède est la méthode de division et d'arrondi en Golang présentée dans cet article. J'espère qu'elle sera utile aux débutants.

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!

Déclaration:
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