Vous êtes sur la page 1sur 2

Université Sultan Moulay Slimane

Faculté Polydisciplinaire Beni Mellal 2019/2020


Département de Mathématiques et Informatique Master ISI
Langage Python
Série 4
Exercice 1
- Définir une classe Produit permettant de déclarer des objets de type Produit ayant les
attributs suivants : la ref, la quantité et le prix unitaire.
- Définir une classe Date permettant de déclarer des objets de type Date.
- Définir une classe Etudiant permettant de déclarer des objets de type Etudiant ayant
les attributs suivants : le nom, le prénom, l’âge, la note.
- Ecrire un programme qui permet de saisir et afficher trois objets :
P de type Produit, D de type Date et E de type Etudiant.

Exercice 2
1. Créer une classe de nombre complexe
2. Définir une méthode :
a. Re qui retourne le réel d’un nombre complexe
b. Im qui retourne l’imaginaire d’un nombre complexe
c. module qui retourne le module d’un nombre complexe
d. argument qui retourne l’argument d’un nombre complexe
e. produit qui retourne le produit de deux nombres complexes
f. Conjugue qui retourne le Conjugué d’un nombre complexe
g. trigonometrique qui affiche la forme trigonométrique d’un nombre complexe
3. Définir la fonction menuGeneral qui permet à l’utilisateur de choisir la fonction qu’il
veuille (pour la tester).
4. Ecrire le programme.

Exercice 3
Un point sera représenté dans ce programme par ses coordonnées cartésiennes (x,y).
class point :
def __init__(self,x=0,y=0):
self.x=x
self.y=y
1. Définir une méthode:
a. affiche permet d'afficher un point.
b. deplacer permet de déplacer un point par dx et dy
2. Définir une fonction:
a. distance permet de calculer la distance entre deux points.
b. saisieLPoints qui permet de remplir une liste des points de dimension n passé en
paramètre.
c. afficherLPoints qui permet d’afficher une liste des points de dimension n passé
en paramètre.
d. dist1(L , i ) qui donne la distance entre le point i et l'origine (0,0),avec L une
liste des points.
e. dist2(L , i , j ) qui donne la distance entre les points d'indices i et j avec L une
liste des points.
f. def dist3( L ) qui donne dmax la distance entre les 2 points les plus éloignés l'un
de l'autre.
On veut calculer rmax le rayon du cercle, autour de l'origine, formé par les points du plan les
plus loin de l'origine et le nombre K de points appartenant à ce cercle . L une liste des points.
g. Ecrire la fonction def cercleMax(L) qui calcule rmax et K .

1
3. Ecrire un programme qui permet de tester les fonctions et les méthodes précédentes.

Exercice 4
La classe Point servira à représenter des points du plan. Ils sont donnés avec leurs coordonnées
réelles x et y.
1. Définissez cette classe avec les méthodes permettant de :
- Initialiser ce point avec une abscisse x et une ordonnée y.
- Afficher ce point.
La classe Droite servira à représenter des droites du plan, non verticales. Ces dernières sont
assimilables aux équations de type y=ax+b. Ainsi, les attributs représentant nos objets droite
seront donc les réelles a et b.
2. Définissez cette classe avec les méthodes permettant de :
- Initialiser cette droite avec les coefficients a et b.
- Afficher cette droite.
Pour avoir un affichage plus simple des objets, il suffit de définir l’une des méthodes spéciales
__repr__ou __str__ qui doivent retourner une chaîne de caractères.

3. Définissez la méthode spéciale __repr__(self) pour les deux classes précédentes, et discuter
son intérêt par rapport à la méthode afficher(…).
4. Définissez la méthode distance(self,p) dans la classe Point permettant de calculer la
distance entre ce point et un point p donné en paramètres.(N.B. il faut s’assurer que p est un
objet Point)
5. Définissez la méthode appartient(self,p) dans la classe Droite permettant de tester si le
point p en paramètres appartient à cette droite.(N.B.il faut s’assurer que p est un objet
Point)
6. Définissez la méthode appartientFichier(self,f) dans la classe Droite permettant de tester si
tous les points contenus dans le fichier f en paramètres (un point par ligne) appartiennent à
cette droite. (N.B. il faut s’assurer que f est une chaîne et traiter les différentes exceptions
lors du traitement du fichier)
7. Ecrivez un programme de test qui utilise toutes les méthodes définies.