Vous êtes sur la page 1sur 3

Graphique 4ème S.

TP2 Graphique : Line Edit, check Box, List et Table Widget

Exercice 1 :
Le PGCD est le plus grand commun diviseur de deux entiers naturels (noté PGCD (a, b)).
Le PPCM est le plus petit commun multiple de deux entiers naturels non nuls (noté PPCM (a, b)).
Pour déterminer le PPCM et le PGCD de deux entiers A et B on procède comme suit :

1ère Méthode 2ème Méthode


Itérativement ou récursivement en contenu à On a PGCD ( a , b ) = PGCD ( b , a MOD b )
PGCD

retrancher le minimum du maximum entre a En contenu jusqu’à avoir b = 0


et b jusqu’à avoir a = 0 ou b = 0 ➔ Le PGCD = a
✓ Déterminer le maximum entre A et B. Mathématiquement on a
✓ Chercher les multiples successifs de
PPCM

PGCD (A, B) * PPCM (A, B) = A * B


maximum jusqu’à avoir un multiple de ➔ PPCM (A, B) = (A * B) / PGCD (A, B)
minimum

On se propose de concevoir une interface graphique contenant les éléments suivants :


✓ Un label contenant le texte "Calcul de PGCD et PPCM " comme titre.
✓ Quatre labels contenant respectivement les textes : "A= ", "B= ", "PGCD= "et "PPCM= ".
✓ Quatre zones de texte contiendront respectivement les valeurs de A, B, PGCD (a, b) et PPCM (a, b)
✓ Deux cases à cocher intitulées "PGCD" et "PPCM "
✓ Un bouton intitulé "Calculer" permet de réaliser les calculs des PGCD et PPCM.
✓ Un bouton intitulé "Effacer" permet de réinitialiser à vide les zones de textes et les case à cocher.
Travail demandé :
1) À l’aide du logiciel "QT Designer", réaliser l’interface graphique "Interface" qui contient les
éléments présentés précédemment comme illustrée dans la figure suivante :

2) Créer le fichier nommé " code.py" dans votre dossier de travail dans lequel vous :
✓ Développez le module "Calcul ", qui permet de remplir les zones de texte correspondant aux
PGCD et PPCM selon l’opération sélectionnée par les cases à cocher.
N.B. : Si vides ou des valeurs erronées saisies dans les zones de texte correspondant à A ou B ou
aucune opération n’est sélectionnée, un message d’alerte sera affiché via " QMessagebox ".
✓ Compléter les instructions de la partie exploitation de l’interface graphique par les informations
nécessaires à l’appel de l’interface et aux différents modules développés.

Prof.: Ben Amor Mosbah 1 A.S: 2022/2023


Graphique 4ème S.I

Exercice 2 :
Pour A et B deux entiers strictement positifs, on définit la relation suivante :
Si (A! * B! MOD (A+B) = A) ou (A! * B! MOD (A+B) = B) Alors A+B est un nombre premier
Exemples : A B A+B A! B! A! * B! A ! * B ! mod (A+B) A+B
2 3 5 2 6 12 12 mod 5=2 =A 5 est premier
7 4 11 5040 24 120960 120960 mod 11 =4 =B 11 est premier
Soit un fichier texte nommé « source.txt » contenant dans chaque ligne un couple de deux valeurs séparées
par une espace représentant respectivement les valeurs de deux entiers A et B.
On se propose de réaliser un programme qui permet, à partir du fichier « source.txt » existant, de générer un
nouveau fichier d’enregistrement « resultat.dat » où chaque enregistrement contient les valeurs du couple A
et B, vérifiant la relation définie précédemment.
On se propose de concevoir une interface graphique contenant les éléments suivants :
✓ Deux labels contenant les textes : "Fichier source " et "Fichier résultat ".
✓ Une List Widget qui contiendra le contenu du fichier "source.txt".
✓ Une Table Widget qui contiendra le contenu du fichier "resultat.dat".
✓ Un bouton intitulé "Afficher " permet d’afficher les contenus des fichiers dans la List Widget et la
Table Widget.
✓ Un bouton intitulé "Annuler" permet de réinitialiser à vide la List Widget et la Table Widget.
Travail demandé :
1) En utilisant l’éditeur de texte disponible, créer dans le dossier de travail le fichier « source.txt » et y
saisir le contenu présenté dans la figure ci-dessous en respectant le contenu de chaque ligne.

2) À l’aide du logiciel "QT Designer", réaliser l’interface graphique "Interface" qui contient les éléments
présentés précédemment comme illustrée dans la figure suivante :

Prof.: Ben Amor Mosbah 2 A.S: 2022/2023


Graphique 4ème S.I

3) Créer le fichier nommé " code.py" dans votre dossier de travail dans lequel vous :
✓ Développer le module " Generer ", qui permet, à partir du fichier « source.txt », de générer un
nouveau fichier d’enregistrements « resultat.dat » où chaque enregistrement contient les valeurs
du couple A et B, vérifiant la relation définie précédemment.
✓ Développer le module " Afficher", qui s’exécute suite à un clic sur le bouton " Afficher " et qui
permet :
• D’importer le contenu du fichier « source.txt » dans la List widget.
• D’importer le contenu du fichier « resultat.dat » dans la Table widget de manière que chaque
ligne comporte une colonne pour les valeurs de A, une colonne pour les valeurs de B et une
colonne pour les sommes de A et B.
N.B. : si le fichier « resultat.dat » est vide un message d’alerte sera affiché via "QMessagebox".
4) Compléter les instructions de la partie exploitation de l’interface graphique par les informations
nécessaires à l’appel de l’interface "Interface " et aux différents modules développés.

Prof.: Ben Amor Mosbah 3 A.S: 2022/2023

Vous aimerez peut-être aussi