Simulation d'Examen TP Python - Duree : 30 minutes
Exercice 1 : Analyse de notes d'etudiants (10 points)
Objectif : Utiliser les boucles, les listes, les fonctions et les conditions.
Énonce :
Écrire un programme qui demande a l'utilisateur de saisir les notes de N etudiants (entiers entre 0 et 20). Le
programme doit ensuite :
1. Afficher la note maximale et la note minimale.
2. Calculer et afficher la moyenne.
3. Afficher toutes les notes superieures ou egales a la moyenne.
Exemple de saisie :
Combien de notes souhaitez-vous entrer ? 5
Note 1 : 12
Note 2 : 8
Note 3 : 17
Note 4 : 14
Note 5 : 10
Sortie attendue :
Note maximale : 17
Note minimale : 8
Moyenne : 12.2
Notes superieures ou egales a la moyenne : 12, 17, 14
Correction :
N = int(input("Combien de notes souhaitez-vous entrer ? "))
notes = []
for i in range(N):
note = float(input(f"Note {i+1} : "))
notes.append(note)
maximum = max(notes)
minimum = min(notes)
moyenne = sum(notes) / N
print("Note maximale :", maximum)
print("Note minimale :", minimum)
print("Moyenne :", round(moyenne, 2))
print("Notes supérieures ou égales à la moyenne :")
for note in notes:
if note >= moyenne:
print(note, end=", ")
Exercice 2 : Definir une classe Rectangle (10 points)
Objectif : Manipuler la POO en Python avec des attributs, constructeurs et methodes.
Énonce :
Creer une classe Rectangle ayant :
- deux attributs longueur et largeur.
- une methode surface() qui calcule la surface.
- une methode perimetre() qui calcule le perimetre.
- une methode afficher() qui affiche toutes les informations du rectangle.
Instancier un rectangle avec des dimensions entrees par l'utilisateur, puis afficher sa surface et son
perimetre.
Correction :
class Rectangle:
def __init__(self, longueur, largeur):
self.longueur = longueur
self.largeur = largeur
def surface(self):
return self.longueur * self.largeur
def perimetre(self):
return 2 * (self.longueur + self.largeur)
def afficher(self):
print(f"Longueur : {self.longueur}")
print(f"Largeur : {self.largeur}")
print(f"Surface : {self.surface()} m²")
print(f"Périmètre : {self.perimetre()} m")
l = float(input("Donnez la longueur : "))
L = float(input("Donnez la largeur : "))
r = Rectangle(l, L)
r.afficher()