C Programmation

Définition de la précision décimale en langage C

Définition de la précision décimale en langage C

Cet article vous montrera comment définir la précision décimale dans le langage de programmation C. Tout d'abord, nous définirons la précision, puis nous examinerons plusieurs exemples pour montrer comment définir la précision décimale dans la programmation C.

Précision décimale en C

La variable de type entier est normalement utilisée pour contenir le nombre entier et la variable de type flottant pour contenir les nombres réels avec des parties fractionnaires, par exemple, 2.449561 ou -1.0587. La précision détermine l'exactitude des nombres réels et est indiquée par le point (.) symbole. L'exactitude ou la précision des nombres réels est indiquée par le nombre de chiffres après la virgule décimale. Ainsi, la précision signifie le nombre de chiffres mentionnés après la virgule dans le nombre flottant. Par exemple, le chiffre 2.449561 a la précision six et -1.058 a la précision trois.

Selon la représentation à virgule flottante simple précision IEEE-754, il y a un total de 32 bits pour stocker le nombre réel. Sur les 32 bits, le bit le plus significatif est utilisé comme bit de signe, les 8 bits suivants sont utilisés comme exposant et les 23 bits suivants sont utilisés comme fraction.

Dans le cas de la représentation à virgule flottante double précision IEEE-754, il y a un total de 64 bits pour stocker le nombre réel. Sur les 64 bits, le bit le plus significatif est utilisé comme bit de signe, les 11 bits suivants sont utilisés comme exposant et les 52 bits suivants sont utilisés comme fraction.

Cependant, lors de l'impression des nombres réels, il est nécessaire de spécifier la précision (en d'autres termes, l'exactitude) du nombre réel. Si la précision n'est pas spécifiée, la précision par défaut sera prise en compte, i.e., six chiffres après la virgule. Dans les exemples suivants, nous allons vous montrer comment spécifier la précision lors de l'impression de nombres à virgule flottante dans le langage de programmation C.

Exemples

Maintenant que vous avez une compréhension de base de la précision, examinons quelques exemples :

    1. Précision par défaut pour float
    2. Précision par défaut pour le double
    3. Définir la précision pour le flotteur
    4. Définir la précision pour le double

Exemple 1 : Précision par défaut pour le flottement

Cet exemple montre que la précision par défaut est définie sur six chiffres après la virgule décimale. Nous avons initialisé une variable flottante avec la valeur 2.7 et imprimé sans spécifier explicitement la précision.

Dans ce cas, le paramètre de précision par défaut garantira que six chiffres après la virgule sont imprimés.

#inclure
int main()

flotteur f = 2.7;
printf("\nValeur de f = %f \n", f);
printf("Taille de float = %ld \n", sizeof(float));
renvoie 0 ;

Exemple 2 : Précision par défaut pour Double

Dans cet exemple, vous verrez que la précision par défaut est fixée à six chiffres après la virgule pour les variables de type double. Nous avons initialisé une variable double, i.e., d, avec la valeur 2.7 et imprimé sans spécifier la précision. Dans ce cas, le paramètre de précision par défaut garantira que six chiffres après la virgule sont imprimés.

#inclure
int main()

double d = 2.7;
printf("\nValeur de d = %lf \n", d);
printf("Taille du double = %ld \n", sizeof(double));
renvoie 0 ;

Exemple 3 : Définir la précision pour le flottement

Maintenant, nous allons vous montrer comment définir la précision des valeurs flottantes. Nous avons initialisé une variable flottante, i.e., f, avec la valeur 2.7, et l'a imprimé avec divers paramètres de précision. Lorsque nous mentionnons « %0.4f" dans l'instruction printf, cela indique que nous souhaitons imprimer quatre chiffres après la virgule décimale.

#inclure
int main()

flotteur f = 2.7;
/* définit la précision de la variable flottante */
printf("\nValeur de f (précision = 0.1) = %0.1f \n", f);
printf("\nValeur de f (précision = 0.2) = %0.2f \n", f);
printf("\nValeur de f (précision = 0.3) = %0.3f \n", f);
printf("\nValeur de f (précision = 0.4) = %0.4f \n", f);
printf("\nValeur de f (précision = 0.22) = %0.22f \n", f);
printf("\nValeur de f (précision = 0.23) = %0.23f \n", f);
printf("\nValeur de f (précision = 0.24) = %0.24f \n", f);
printf("\nValeur de f (précision = 0.25) = %0.25f \n", f);
printf("\nValeur de f (précision = 0.40) = %0.40f \n", f);
printf("Taille de float = %ld \n", sizeof(float));
renvoie 0 ;

Exemple 4 : Définir la précision pour le double

Dans cet exemple, nous verrons comment définir la précision pour les valeurs doubles. Nous avons initialisé une variable double, i.e., d, avec la valeur 2.7 et imprimé avec divers réglages de précision. Lorsque nous mentionnons « %0.52f" dans l'instruction printf, cela indique que nous souhaitons imprimer 52 chiffres après la virgule.

#inclure
int main()

flotteur f = 2.7;
/* définit la précision de la variable flottante */
printf("\nValeur de f (précision = 0.1) = %0.1f \n", f);
printf("\nValeur de f (précision = 0.2) = %0.2f \n", f);
printf("\nValeur de f (précision = 0.3) = %0.3f \n", f);
printf("\nValeur de f (précision = 0.4) = %0.4f \n", f);
printf("\nValeur de f (précision = 0.22) = %0.22f \n", f);
printf("\nValeur de f (précision = 0.23) = %0.23f \n", f);
printf("\nValeur de f (précision = 0.24) = %0.24f \n", f);
printf("\nValeur de f (précision = 0.25) = %0.25f \n", f);
printf("\nValeur de f (précision = 0.40) = %0.40f \n", f);
printf("Taille de float = %ld \n", sizeof(float));
renvoie 0 ;

Conclusion

La précision est un facteur très important pour représenter un nombre réel avec une précision adéquate. Le langage de programmation c fournit le mécanisme pour contrôler l'exactitude ou l'exactitude d'un nombre réel. Cependant, nous ne pouvons pas changer la précision réelle du nombre réel. Par exemple, la partie fraction d'un nombre à virgule flottante simple précision de 32 bits est représentée par 23 bits, et ceci est fixe ; nous ne pouvons pas changer cela pour un système particulier. Nous ne pouvons décider de la précision que nous voulons qu'en définissant la précision souhaitée du nombre réel. Si nous avons besoin de plus de précision, nous pouvons toujours utiliser le nombre à virgule flottante double précision 64 bits.

Comment capturer et diffuser votre session de jeu sur Linux
Dans le passé, jouer à des jeux n'était considéré qu'un passe-temps, mais avec le temps, l'industrie du jeu a connu une croissance énorme en termes de...
Meilleurs jeux à jouer avec le suivi des mains
Oculus Quest a récemment introduit l'idée géniale du suivi manuel sans contrôleurs. Avec un nombre toujours croissant de jeux et d'activités qui exécu...
Comment afficher la superposition OSD dans les applications et jeux Linux en plein écran
Jouer à des jeux en plein écran ou utiliser des applications en mode plein écran sans distraction peut vous couper des informations système pertinente...