0% ont trouvé ce document utile (0 vote)
13 vues4 pages

Programmation POO et Tkinter en Python

Le document présente une série d'exercices en Python axés sur la programmation orientée objet, incluant la création de classes pour des formes géométriques telles que des rectangles, des triangles et des cercles, ainsi qu'une classe pour des livres. Il aborde également la gestion des interfaces graphiques avec Tkinter, ainsi que la manipulation de fichiers texte. Chaque exercice est conçu pour renforcer les compétences en programmation et en utilisation de bibliothèques Python.

Transféré par

Nouhayla Essalhi
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
13 vues4 pages

Programmation POO et Tkinter en Python

Le document présente une série d'exercices en Python axés sur la programmation orientée objet, incluant la création de classes pour des formes géométriques telles que des rectangles, des triangles et des cercles, ainsi qu'une classe pour des livres. Il aborde également la gestion des interfaces graphiques avec Tkinter, ainsi que la manipulation de fichiers texte. Chaque exercice est conçu pour renforcer les compétences en programmation et en utilisation de bibliothèques Python.

Transféré par

Nouhayla Essalhi
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

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).

Vous aimerez peut-être aussi