Partie
Travaux dirigés
l: POO
: Série 2
avec Python
Exercice 1 :
Éerire
enPython un progranmme utilisant une classe rectangle dont le
Constructeur prend deux qui offre les fonctions
suivantes : paramètres,largeur et hauteur et
1)calcul
du
périmètre
2)calcul
dela
surface
3)
affichage mutateurs triviauX (lecture et
ainsi que les accesseurs et
modification de la
largeur et de la hauteur).
Exercice 2:
Eerivez un programme en Pyihon qui définit une classe appelée Fome avec un
constructeur qui donne de la valeur à la largeur(x) et àla hauteur(y). Définir la
méthode aire() dans
deux sous-classes Triangle et Rectangle, qui calculent
les
principale main, définissez deux variables,un triangle
et
I aire. Dans la méthode
dans ces deux variables.
un rectangle, puis appelez la fonction aire)
Notez que:
T'aire du triangle est = largeur * hauteur /2
l'aire du rectangle est = largeur * hauteur.
Exercice 3:
de créer un cercle C(O,r) de centre
1) Définir une classe Cercle permettant
O(a,b) et de rayon r à l'aide du constructeur :
la classe qui permet de calculer la surface
2)Définir une méthode Surface() de
ducercle
qui permet de calculer le
3)Définir une méthode Perimetre) de la classe
périmètre du cercle
permet de tester si un
de la classe qui
4) Définir une méthodetestAppartenance)
cercle C(O,r).
point A(x,y) appartient ou non au
Exercice4:
1. Définir une classe Book avec les attributs suivants : Titre, Auteur (Nom
complet), Prix.
2. Définir un constructeur ayant comme attributs: Titre, Auteur, Prix.
3. Dfinir la méthode View) pour afficher les informations d'une instance object
Book.
4. Ecrire un programme pour tester la classe Book.
Partie 1: Gestion desinterfaces Graphique avec tkinter
Exercice 5 :
lester le programme suivant et donner des conclusions
from tkinter import *
fenl =Tk)
texlLabel(fen l, text=Bonjour tout le monde ",fgred)
[Link])
boul =Button(fen1, text-Quitter', command [Link])
[Link])
[Link]()
Exercice 6:
lester le programme suivant et donner des conclusions
# exercice utilisant la bibliothèque graphique tkinter
from tkinter import
from random import randrange
d'événements : --
#--- définition des fonctions gestionnaires
def drawline():
"Tracé d'une ligne dans le canevas canl"
global x1,yl,x2,y2, coul
[Link] line(xl,vl,N2,v2,width=2, fill-coul)
y2, yl = y2+10, yl-10
ligne suivante :
# modification des coordonnées pour la
def
changecolor():
du tracé"
"Changement aléatoire de la couleur
lobal coul
pal-Ipurple'' cyan','maroon'.'green' 'red','blue','orange','yellow']
randrange(8)
#=> génère un nombre aléatoire de 0 à 7
cOul -pal [
suivantes seront utilisées de manière globale :
"eovaables
x1, yl, x2, y2 = 10, 190, 190, 10 # coordonnées de la ligne
coul ='dark green' #couleur de la ligne
# Création duwidget principal ("'maître") :
fen1 =Tk)
:
# création des widgets "esclaves"
grey',height-200,width-200)
can1-Canvas(fen l,bg-'dark
[Link](side-LEFT)
boul =Button(fenl,text-'Quitter',command=[Link])
[Link](side-BOTTOM)
bou2 =Button(fen1,text-'Tracer une ligne',command=drawline)
bou2,pack)
bou3 = Button(fen 1,text-'Autrecouleur',command-changecolor)
[Link])
[Link]() # démarrage du réceptionnaire d'événements
[Link]() # destruction (fermeture) de la fenêtre
rtie l : Gestion des fichiers
créer et de relire aisément un fichier
texte.
1)EcVeZ un script qui permet de
2)
demandera d'abord à l’utilisateur d'entrer le nom du fichier.
Vore programme de texte,
le choix, soit d'enregistrer de nouvelles lignes
Ensuite, il lui proposera
Soitd'afficherle contenu du fichier.
texte successives
en utilisant
entrer ses lignes de
pouvoir
Lutilisateur devra les unes des autres. Pour terminer
pour les séparer
Smplement la touche <Enter> (c'est-à-dire utiliser la touche
une ligne vide
suffirad'entrer
les entrées, il lui
<Enter> seule). séparées les unes des
montrer les lignes du fichier
L'affichage du contenudevra de fin de ligne
ne doivent pas
(les codes
la plus naturelle
manière
autres de la
apparaître).