Gérer les opérations arithmétiques de types mixtes en C

CBeginner
Pratiquer maintenant

Introduction

Dans ce laboratoire, vous apprendrez à gérer les opérations arithmétiques mixtes en programmation C. Le laboratoire couvre les étapes suivantes :

Premièrement, vous apprendrez à déclarer et initialiser des variables entières et à virgule flottante, et à afficher leurs valeurs à l'aide des spécificateurs de format appropriés. Ensuite, vous explorerez les opérations arithmétiques combinant différents types numériques, démontrant la conversion de type et l'arithmétique mixte. Enfin, vous afficherez et vérifierez les résultats de ces opérations arithmétiques mixtes.

À la fin de ce laboratoire, vous aurez une compréhension solide de la manière de gérer et de manipuler efficacement les données de type mixte en C, une compétence fondamentale pour la création de programmes robustes et polyvalents.

Déclaration de variables entières et à virgule flottante

Dans cette étape, vous apprendrez à déclarer et initialiser différents types de variables numériques en programmation C. Nous nous concentrerons sur la création de variables entières et à virgule flottante pour préparer les opérations arithmétiques mixtes.

Tout d'abord, créons un nouveau fichier source C dans le répertoire du projet :

cd ~/project
nano mixed_arithmetic.c

Maintenant, ajoutez le code suivant pour déclarer les variables :

#include <stdio.h>

int main() {
    // Déclaration de variables entières
    int entier1 = 10;
    int entier2 = 5;

    // Déclaration de variables à virgule flottante
    float decimal1 = 7.5;
    float decimal2 = 3.2;

    // Affichage des variables déclarées
    printf("Variables entières :\n");
    printf("entier1 = %d\n", entier1);
    printf("entier2 = %d\n", entier2);

    printf("\nVariables à virgule flottante :\n");
    printf("decimal1 = %f\n", decimal1);
    printf("decimal2 = %f\n", decimal2);

    return 0;
}

Compilons et exécutons le programme :

gcc mixed_arithmetic.c -o mixed_arithmetic
./mixed_arithmetic

Sortie exemple :

Variables entières :
entier1 = 10
entier2 = 5

Variables à virgule flottante :
decimal1 = 7.500000
decimal2 = 3.200000

Dans ce code, nous avons démontré :

  • La déclaration de variables entières à l'aide du type int
  • La déclaration de variables à virgule flottante à l'aide du type float
  • L'initialisation des variables avec des valeurs spécifiques
  • L'utilisation de printf() pour afficher les valeurs des variables avec les spécificateurs de format appropriés
  • La différence entre les représentations des nombres entiers et à virgule flottante

Effectuer des opérations arithmétiques combinant différents types

Dans cette étape, vous apprendrez à effectuer des opérations arithmétiques combinant différents types numériques en C, démontrant ainsi la conversion de type et l'arithmétique mixte.

Ouvrez le fichier précédent pour continuer notre exemple :

cd ~/project
nano mixed_arithmetic.c

Remplacez la fonction main() précédente par le code suivant :

#include <stdio.h>

int main() {
    // Variables entières
    int entier1 = 10;
    int entier2 = 5;

    // Variables à virgule flottante
    float decimal1 = 7.5;
    float decimal2 = 3.2;

    // Opérations arithmétiques mixtes
    int resultat_entier = entier1 + entier2;
    float resultat_float = decimal1 + decimal2;

    // Addition de type mixte (entier + flottant)
    float addition_mixte = entier1 + decimal1;

    // Multiplication de type mixte
    float multiplication_mixte = entier2 * decimal2;

    // Démonstration de la conversion de type
    printf("Addition entière : %d + %d = %d\n", entier1, entier2, resultat_entier);
    printf("Addition flottante : %.1f + %.1f = %.1f\n", decimal1, decimal2, resultat_float);
    printf("Addition mixte : %d + %.1f = %.1f\n", entier1, decimal1, addition_mixte);
    printf("Multiplication mixte : %d * %.1f = %.1f\n", entier2, decimal2, multiplication_mixte);

    return 0;
}

Compilez et exécutez le programme :

gcc mixed_arithmetic.c -o mixed_arithmetic
./mixed_arithmetic

Sortie exemple :

Addition entière : 10 + 5 = 15
Addition flottante : 7.5 + 3.2 = 10.7
Addition mixte : 10 + 7.5 = 17.5
Multiplication mixte : 5 * 3.2 = 16.0

Points clés de cet exemple :

  • Effectuer des opérations arithmétiques avec des variables de même type (entier-entier, flottant-flottant)
  • Démontrer la conversion de type automatique dans les opérations de type mixte
  • C convertit automatiquement les entiers en nombres à virgule flottante lorsque nécessaire
  • Utiliser les spécificateurs de format pour contrôler l'affichage des décimales

Affichage et vérification des résultats

Dans cette dernière étape, vous apprendrez à formater et à vérifier les résultats d'opérations arithmétiques mixtes en C, en vous concentrant sur une sortie précise et la validation des résultats.

Ouvrez le fichier précédent pour continuer notre exemple :

cd ~/project
nano mixed_arithmetic.c

Mettez à jour la fonction main() avec une sortie plus détaillée et une vérification des résultats :

#include <stdio.h>
#include <math.h>

int main() {
    // Variables entières
    int entier1 = 10;
    int entier2 = 5;

    // Variables à virgule flottante
    float decimal1 = 7.5;
    float decimal2 = 3.2;

    // Opérations arithmétiques mixtes
    float addition_mixte = entier1 + decimal1;
    float multiplication_mixte = entier2 * decimal2;
    float division_mixte = decimal1 / entier2;

    // Affichage détaillé des résultats avec formatage
    printf("Résultats des opérations arithmétiques :\n");
    printf("1. Addition mixte :        %d + %.1f = %.2f\n", entier1, decimal1, addition_mixte);
    printf("2. Multiplication mixte :  %d * %.1f = %.2f\n", entier2, decimal2, multiplication_mixte);
    printf("3. Division mixte :        %.1f / %d = %.2f\n", decimal1, entier2, division_mixte);

    // Vérification des résultats
    printf("\nVérification des résultats :\n");
    printf("Vérification addition mixte :       %.2f == %.2f\n",
           addition_mixte, (float)entier1 + decimal1);
    printf("Vérification multiplication mixte : %.2f == %.2f\n",
           multiplication_mixte, (float)entier2 * decimal2);
    printf("Vérification division mixte :       %.2f == %.2f\n",
           division_mixte, decimal1 / entier2);

    return 0;
}

Compilez et exécutez le programme :

gcc mixed_arithmetic.c -o mixed_arithmetic
./mixed_arithmetic

Sortie exemple :

Résultats des opérations arithmétiques :
1. Addition mixte :        10 + 7.5 = 17.50
2. Multiplication mixte :  5 * 3.2 = 16.00
3. Division mixte :        7.5 / 5 = 1.50

Vérification des résultats :
Vérification addition mixte :       17.50 == 17.50
Vérification multiplication mixte : 16.00 == 16.00
Vérification division mixte :       1.50 == 1.50

Points clés de cet exemple :

  • Utilisation de différents spécificateurs de format pour une sortie précise
  • Démonstration d'opérations arithmétiques mixtes avec addition, multiplication et division
  • Vérification inline des résultats
  • Affichage de la conversion de type dans les opérations arithmétiques

Résumé

Dans ce laboratoire, vous avez appris à déclarer et initialiser différents types de variables numériques en programmation C, y compris les variables entières et à virgule flottante. Vous avez ensuite exploré les opérations arithmétiques combinant ces différents types numériques, démontrant ainsi la conversion de type et l'arithmétique mixte. Enfin, vous avez affiché et vérifié les résultats de ces opérations arithmétiques mixtes.

Les points clés de ce laboratoire incluent la compréhension des différences entre les représentations des nombres entiers et à virgule flottante, l'utilisation de spécificateurs de format appropriés dans les instructions printf(), et le comportement de la conversion de type et de l'arithmétique mixte de C lorsqu'on travaille avec des variables de différents types numériques.