Affichage de l'aire
Dans cette étape, vous améliorerez le programme de calcul de l'aire d'un trapèze en ajoutant une sortie formatée et la gestion des erreurs pour une meilleure expérience utilisateur.
Ouvrez le fichier existant et mettez à jour le code :
cd ~/project
nano trapezoid_area.c
Remplacez le code précédent par la mise en œuvre suivante :
#include <stdio.h>
int main() {
float side1, side2, height, area;
// Validation des entrées
printf("Calculateur d'aire de trapèze\n");
printf("-----------------------------\n");
// Demander à l'utilisateur de saisir la longueur du premier côté parallèle
printf("Entrez la longueur du premier côté parallèle : ");
if (scanf("%f", &side1) != 1 || side1 <= 0) {
printf("Erreur : Entrée invalide pour le premier côté.\n");
return 1;
}
// Demander à l'utilisateur de saisir la longueur du deuxième côté parallèle
printf("Entrez la longueur du deuxième côté parallèle : ");
if (scanf("%f", &side2) != 1 || side2 <= 0) {
printf("Erreur : Entrée invalide pour le deuxième côté.\n");
return 1;
}
// Demander à l'utilisateur de saisir la hauteur
printf("Entrez la hauteur du trapèze : ");
if (scanf("%f", &height) != 1 || height <= 0) {
printf("Erreur : Entrée invalide pour la hauteur.\n");
return 1;
}
// Calculer l'aire en utilisant la formule de l'aire du trapèze
area = 0.5 * (side1 + side2) * height;
// Sortie formatée des résultats
printf("\nRésultats du calcul du trapèze :\n");
printf("------------------------------\n");
printf("Premier côté : %.2f\n", side1);
printf("Deuxième côté : %.2f\n", side2);
printf("Hauteur : %.2f\n", height);
printf("Aire : %.2f unités carrées\n", area);
return 0;
}
Compilez et exécutez le programme :
gcc trapezoid_area.c -o trapezoid_area
./trapezoid_area
Sortie d'exemple :
Calculateur d'aire de trapèze
-----------------------------
Entrez la longueur du premier côté parallèle : 5
Entrez la longueur du deuxième côté parallèle : 7
Entrez la hauteur du trapèze : 3
Résultats du calcul du trapèze :
------------------------------
Premier côté : 5.00
Deuxième côté : 7.00
Hauteur : 3.00
Aire : 18.00 unités carrées
Explication
- Ajout d'une validation des entrées pour éviter les entrées invalides
- Amélioration de la mise en forme de la sortie avec des en-têtes et des étiquettes claires
- Ajout de la gestion des erreurs pour les types d'entrée incorrects
- Sortie descriptive avec tous les paramètres d'entrée et l'aire calculée
- Utilisation de
%.2f pour afficher les nombres à virgule flottante avec deux décimales