Pr.
SAHHAL
TP N°2 « OPERATEURS ARITHMETIQUES, LOGIQUES ET
UNAIRES » 1AP- Correction
Exercice 1 :
Écrivez un programme qui demande à l’utilisateur de taper deux nombres X et Y de type float, ensuite
calculer la somme, la soustraction, la multiplication et la division de ces nombres, puis afficher le
résultat de chaque opération avec 2 chiffres après la virgule.
#include <stdio.h>
int main () {
float X, Y, somme, soustraction,
multiplication, division;
// Demander à l'utilisateur de saisir deux nombres
printf("Entrez le premier nombre (X) : ");
scanf("%f", &X);
printf("Entrez le deuxième nombre (Y) : ");
scanf("%f", &Y);
// Effectuer les calculs
somme = X + Y;
soustraction = X - Y;
multiplication = X * Y;
// Gestion de la division
if (Y != 0) {
division = X / Y;
} else {
printf("Erreur : Division par zéro
impossible.\n");
return 1; // Terminer le programme avec un
code d'erreur
}
// Afficher les résultats avec 2 chiffres après la
virgule
printf("\nRésultats :\n");
printf("Somme : %.2f\n", somme);
printf("Soustraction : %.2f\n", soustraction);
printf("Multiplication : %.2f\n", multiplication);
printf("Division : %.2f\n", division);
return 0;
}
Pr. SAHHAL
Exercice 2 :
Écrivez un programme qui déclare ces variables a, b, c et d de type int, float, double et char, qui
prennent des valeurs : 15, 17.5, 18.77777 et “ bonjour tout le monde“ lors de la déclaration, sachant
que b est une valeur constante. Puis afficher ses valeurs.
#include <stdio.h>
int main () {
// Déclaration et initialisation des variables
int a = 15;
const float b = 17.5; // b est une constante
double c = 18.77777;
char d []= "bonjour tout le monde";
// Affichage des valeurs
printf ("Valeurs des variables : \n");
printf ("a (int): %d\n",a);
printf ("b (float, constant) : %.2f\n", b); // Affichage de b avec 2 chiffres après la virgule
printf("c (double) : %.5lf\n", c); // Affichage de c avec 5 chiffres après la virgule
printf("d (char[]) : %s\n", d);
return 0;
}
Pr. SAHHAL
Exercice 3 :
Calculer la moyenne de ces notes, sachant que le résultat doit s’afficher de cette manière :
note 1 : 17 note
2 : 18 note 3 :
11.5 note 4 :
9.75 note 5 : 6
La moyenne de ces 5 notes est : 12.45
#include <stdio.h>
int main () {
// Déclaration et initialisation des notes
float note1 = 17.0;
float note2 = 18.0;
float note3 = 11.5;
float note4 = 9.75;
float note5 = 6.0;
// Calcul de la moyenne
float moyenne = (note1 + note2 + note3 + note4 + note5) / 5;
// Affichage des notes et de la moyenne
printf("note 1 :%.2f\n", note1);
printf("note 2 : %.2f\n", note2);
printf("note 3 : %.2f\n", note3);
printf("note 4 : %.2f\n", note4);
printf("note 5 : %.2f\n", note5);
printf("La moyenne de ces 5 notes est : %.2f\n", moyenne);
return 0;
}
Pr. SAHHAL
Exercice 4 :
Demander à l’utilisateur le prix unitaire HT et le nombre d’exemplaires et TAUX_TVA, puis calculer et
afficher le prix total HT, la TVA et le prix total (TTC) à payer. Sachant que :
Prix Total HT = prix Unitaire HT * nb
TVA = Prix Unitaire HT * nb * TAUX_TVA
Prix Total TTC = Prix Unitaire HT * nb * (1 + TAUX_TVA)
#include <stdio.h>
int main () {
float prixUnitaireHT, tauxTVA, prixTotalHT, tva, prixTotalTTC;
int nb;
// Demande des entrées à l'utilisateur
printf("Entrez le prix unitaire HT : ");
scanf("%f", &prixUnitaireHT);
printf("Entrez le nombre d'exemplaires : ");
scanf("%d", &nb);
printf("Entrez le taux de TVA (en pourcentage, ex : 20 pour 20%%) : ");
scanf("%f", &tauxTVA);
// Conversion du taux de TVA en fraction
tauxTVA /= 100;
// Calculs
prixTotalHT = prixUnitaireHT * nb;
tva = prixTotalHT * tauxTVA;
prixTotalTTC = prixTotalHT * (1 + tauxTVA);
// Affichage des résultats
printf("\nRésultats :\n");
printf("Prix Total HT : %.2f\n", prixTotalHT);
printf("TVA : %.2f\n", tva);
printf("Prix Total TTC : %.2f\n", prixTotalTTC);
return 0;
}
Pr. SAHHAL
Exercice 5 :
Écrire un programme qui demande à l’utilisateur de saisir les valeurs de trois de résistances de type
double par l’utilisateur puis calculer leur résistance globale dans les deux cas :
- Les trois résistances sont placées en série: (R1 + R2 + R3)
- Les trois résistances sont placées en parallèle: 1 / (1/R1 + 1/R2 + 1/R3)
#include <stdio.h>
int main () {
double R1, R2, R3;
double resistanceSerie, resistanceParallele ;
// Demande des valeurs des résistances
printf("Entrez la valeur de la résistance R1 : ");
scanf("%lf", &R1);
printf("Entrez la valeur de la résistance R2 : ");
scanf("%lf", &R2);
printf("Entrez la valeur de la résistance R3 : ");
scanf("%lf", &R3);
// Calcul de la résistance globale en série
resistanceSerie = R1 + R2 + R3;
// Calcul de la résistance globale en parallèle
if (R1 != 0 && R2 != 0 && R3 != 0) {
resistanceParallele = 1 / (1 / R1 + 1 / R2 + 1 / R3);
} else {
printf("Erreur : Une résistance ne peut pas avoir une valeur de zéro pour le mode parallèle.\n");
return 1; // Terminer avec un code d'erreur
}
// Affichage des résultats
printf("\nRésultats :\n");
printf("Résistance globale en série : %.2lf\n", resistanceSerie);
printf("Résistance globale en parallèle : %.2lf\n", resistanceParallele);
return 0;
}
Pr. SAHHAL
Exercice 6 :
Écrire un programme qui calcule la distance entre deux points M et P du plan OMP. Le
programme doit afficher les coordonnées de M et P. Puis afficher la distance.
#include <stdio.h>
#include <math.h> // Pour utiliser la fonction sqrt
int main () { double x1, y1, x2,
y2, distance;
// Saisie des coordonnées du point M
printf("Entrez les coordonnées du point M (x1 y1) : ");
scanf("%lf%lf", &x1, &y1);
// Saisie des coordonnées du point P
printf("Entrez les coordonnées du point P (x2 y2) : ");
scanf("%lf%lf", &x2, &y2);
// Calcul de la distance entre M et P
distance = sqrt(pow(x2 - x1, 2) + pow(y2 - y1, 2));
// Affichage des résultats
printf("\nCoordonnées des points :\n");
printf("M(%.2lf, %.2lf)\n", x1, y1);
printf("P(%.2lf, %.2lf)\n", x2, y2);
printf ("La distance entre M et P est : %.2lf\n", distance);
return 0;
}
Pr. SAHHAL
Exercice 7 :
Écrivez un programme qui affiche la taille en mémoire de cinq variables nommées MyInt, MyLong,
MyFloat, MyDouble et MyChar, successivement de types int, long, float, double et char. À l'aide de
l'opérateur sizeof, affichez la taille en mémoire réservée à chaque variable. Notez que nous utilisons le
spécificateur de format %lu pour accéder à la taille en mémoire.
Example: printf("%lu\n", sizeof(MyInt));
#include <stdio.h>
int main() {
// Déclaration des variables
int MyInt; long MyLong;
float MyFloat; double
MyDouble; char MyChar;
// Affichage des tailles en mémoire
printf("Taille de MyInt (int) : %lu octets\n", sizeof(MyInt));
printf("Taille de MyLong (long) : %lu octets\n", sizeof(MyLong));
printf("Taille de MyFloat (float) : %lu octets\n", sizeof(MyFloat));
printf("Taille de MyDouble (double) : %lu octets\n", sizeof(MyDouble));
printf("Taille de MyChar (char) : %lu octets\n", sizeof(MyChar));
return 0;
}