Dans cet article, nous explorerons comment manipuler et afficher des doubles en langage C à travers des exemples pratiques. Nous aborderons également les meilleures pratiques pour assurer des résultats précis dans différentes applications.
💡 Le langage C offre une puissante flexibilité pour manipuler les nombres à virgule flottante, tels que les doubles.
Voici un exemple simple de code en C pour manipuler et afficher un double :
#include <stdio.h>
int main() {
double num = 3.14159;
printf("Le double est : %lf\n", num);
return 0;
} Dans cet exemple, nous déclarons un double num avec la valeur de pi, puis nous l’affichons à l’aide de printf avec le spécificateur de format %lf.
Applications des Doubles en Langage C :
Illustrons maintenant quelques applications courantes des doubles en langage C à travers des exemples de code :
#include <stdio.h>
int main() {
double principal = 1000.0;
double taux_interet_annuel = 0.05;
int nombre_annees = 5;
double montant_final = principal * pow((1 + taux_interet_annuel), nombre_annees);
printf("Le montant final après %d années est : %lf\n", nombre_annees, montant_final);
return 0;
} #include <stdio.h>
#include <math.h>
int main() {
double angle_deg = 45.0;
double angle_rad = angle_deg * M_PI / 180.0;
double sinus_val = sin(angle_rad);
double cosinus_val = cos(angle_rad);
printf("Sinus de %lf degrés : %lf\n", angle_deg, sinus_val);
printf("Cosinus de %lf degrés : %lf\n", angle_deg, cosinus_val);
return 0;
} #include <stdio.h>
typedef struct {
double x;
double y;
} Point;
int main() {
Point point1 = {2.5, 3.0};
Point point2 = {5.0, 7.5};
double distance = sqrt(pow((point2.x - point1.x), 2) + pow((point2.y - point1.y), 2));
printf("La distance entre les points est : %lf\n", distance);
return 0;
} Meilleures Pratiques :
Pour garantir des résultats précis lors de la manipulation des doubles en langage C, il est essentiel de suivre quelques meilleures pratiques :
math.h pour accéder à des fonctions prédéfinies pour les opérations sur les doubles. #include <stdio.h>
int main() {
double num1 = 1.0;
double num2 = 1.0 / 3.0;
double somme = num1 + num2;
printf("La somme est : %lf\n", somme);
return 0;
} Cette sortie peut surprendre, car on pourrait s’attendre à ce que la somme de 1.0 et 1/3 soit égale à 1.33333…, mais en raison de la représentation à virgule flottante, la somme peut être légèrement différente.
#include <stdio.h>
#include <math.h>
int main() {
double num1 = 0.1 + 0.2;
double num2 = 0.3;
double tolerance = 0.000001;
if (fabs(num1 - num2) < tolerance) {
printf("Les nombres sont considérés comme égaux.\n");
} else {
printf("Les nombres ne sont pas égaux.\n");
}
return 0;
} Cette approche utilise une tolérance pour déterminer si les nombres sont considérés comme égaux malgré de petites différences de précision.
#include <stdio.h>
#include <math.h>
int main() {
double max_val = DBL_MAX;
double min_val = DBL_MIN;
printf("La plus grande valeur de double est : %lf\n", max_val);
printf("La plus petite valeur de double est : %lf\n", min_val);
double overflow = max_val * 2;
double underflow = min_val / 2;
printf("Débordement : %lf\n", overflow);
printf("Sous-flot : %lf\n", underflow);
return 0;
} Dans cet exemple, nous utilisons les constantes DBL_MAX et DBL_MIN de la bibliothèque <float.h> pour obtenir les limites supérieures et inférieures des doubles, puis nous simulons un débordement et un sous-flot.
Ces cas particuliers démontrent l’importance de comprendre les subtilités de la manipulation des doubles en langage C et de les gérer correctement pour éviter des résultats inattendus.
Deux outils concrets pour piloter la qualité sans alourdir vos équipes Cette page met à…
Un chantier se gagne souvent avant même l’arrivée des équipes. Quand tout est clair dès…
Le mariage a du sens quand il repose sur une décision libre, mûrie et partagée.…
Une étude de cas réussie commence par une structure sûre. Ce modèle Word vous guide…
Les soft skills se repèrent vite sur une fiche, mais elles ne pèsent vraiment que…
Outil de comparaison et repérage des offres étudiantes Choisir des verres progressifs ressemble rarement à…
This website uses cookies.