Exercice 1
1. Ecrire une classe Rectangle en langage Python, permettant de construire un
rectangle dotée d'attributs longueur et largeur.
2. Créer une méthode Perimetre() permettant de calculer le périmètre du rectangle et
une méthode Surface() permettant de calculer la surface du rectangle
3. Créer les getters et setters.
4. Créer une classe fille Parallelepipede héritant de la classe Rectangle et dotée en plus
d'un attribut hauteur et d'une autre méthode Volume() permettant de calculer le
volume du Parallélépipède.
Réponse
#coding: utf-8
class Rectangle:
def __init__(self,longueur,largeur):
[Link] = longueur
[Link] = largeur
# Méthode qui calcul le périmètre
def Perimetre(self):
return 2*([Link] + [Link])
# Méthode qui calcul la surface
def Surface(self):
return [Link]*[Link]
class Parallelepipede(Rectangle):
def __init__(self,longueur,largeur, hauteur):
Rectangle.__init__(self,longueur,largeur)
[Link] = hauteur
# méthode qui calcul le volume
def Volume(self):
return [Link]*[Link]*[Link]
monRectangle = Rectangle(7, 5)
monParallelepipede = Parallelepipede(7,5,2)
print("Le périmètre de mon rectangle est : ",[Link]())
print("La surface de mon rectangle est : ", [Link]())
print("Le volume de mon parallelepipede est : ", [Link]())
Exercice 2
1. Créer une classe Python nommée CompteBancaire qui représente un compte
bancaire, ayant pour attributs : numeroCompte (type numérique ) , nom (nom du
propriétaire du compte du type chaine), solde.
2. Créer un constructeur ayant comme paramètres : numeroCompte, nom, solde.
3. Créer une méthode Versement() qui gère les versements.
4. Créer une méthode Retrait() qui gère les retraits.
5. Créer une méthode Agios() permettant d'appliquer les agios à un pourcentage de
5% du solde
6. Créer une méthode afficher() permettant d’afficher les détails sur le compte
7. Donner le code complet de la classe CompteBancaire.
Réponse
#coding: utf-8
class CompteBancaire:
def __init__(self, idNumber, nomPrenom, solde):
[Link] = idNumber
[Link] = nomPrenom
[Link] = solde
def versement(self, argent):
[Link] = [Link] + argent
def retrait(self, argent):
if([Link] < argent):
print(" Impossible d'effectuer l'opération. Solde insuffisant !")
else:
[Link] = [Link] - argent
def agios(self):
[Link] =[Link]*95/100
def afficher(self):
print("Compte numéro : " , [Link])
print("Nom & Prénom : ", [Link])
print(" Solde : ", [Link] , " DH ")
monCompte = CompteBancaire(16168891, " Mohamed Rachid", 22300)
[Link](1500)
[Link](24000)
#[Link]()
[Link]()
Exercice 3
1. Définir une classe Cercle permettant de créer un cercle C(O,r) de centre O(a,b) et
de rayon r à l'aide du constructeur :
def __init__(self , a , b , r):
self.a = a
self.b = b
self.r = r
2. Définir une méthode Surface() de la classe qui permet de calculer la surface du
cercle
3. Définir une méthode Perimetre() de la classe qui permet de calculer le périmètre du
cercle
4. Définir une méthode testAppartenance() de la classe qui permet de tester si un
point A(x,y) appartient ou non au cercle C(O,r)
Réponse
#coding: utf-8
from math import *
class Cercle:
def __init__(self , a , b , r):
self.a = a
self.b = b
self.r = r
def perimetre(self):
return 2*pi*self.r
def surface(self):
return pi*self.r**2
def formEquation(self,x,y):
return (x-self.a)**2 + (y-self.b)**2 -self.r**2
def test_appartenance(self,x,y):
if([Link](x,y)==0):
print("le point : (",x,y,") appartient au cercle C")
else:
print("le point : (",x,y,") n'appartient pas au cercle C")
# Instanciation
C = Cercle(1,2,1)
print("le périmètre du cercle C est: ", [Link]())
print("le surface du cercle C est: ", [Link]())
C.test_appartenance(1,1)
Exercice 4 :
1. Définir une classe Book avec les attributs suivants : Title, Author (Nom
complet), Price.
2. Définir un constructeur ayant comme attributs: Title, Author, Price.
3. Définir la méthode View() pour afficher les informations d'une instance object
Book.
4. Ecrire un programme pour tester la classe Book
Réponse
#coding: utf-8
# Question 1
class Book:
# Question 2
def __init__(self , Title , Author , Price):
[Link] = Title
[Link] = Author
[Link] = Price
# Question 3
def view(self ):
return ("Book Title: " , [Link] , "Book Author: " , [Link], "Book Price: " , [Link])
# Question 4
MyBook = Book("Python" , "Mohamed" , "23 Dh")
print( [Link]())