Vous êtes sur la page 1sur 2

Devoir Contrôle N°2 

Prof. : Zouari Ali Matière : informatique Classe : 4éme M1


Durée : 1heure

On se propose de créer un programme informatique avec interface permettant de générer aléatoirement un mot de
passe composé de (Ncar) caractères contenant obligatoirement de lettre(s) majuscule(s), lettre(s) minuscule(s) et
chiffre(s)
L’interface du générateur du mot de passe doit comporter les éléments suivants comme montré ci-dessous:
 Une zone de texte contenant le titre
 Une zone de texte demandant la saisie du nombre de caractères du mot de passe.
 Une zone de saisie permettant la saisie du nombre de caractères du mot de passe.
 Une zone de texte demandant la saisie du nombre de lettres majuscules.
 Une zone de saisie permettant la saisie du nombre de lettres majuscules.
 Une zone de texte demandant la saisie du nombre de lettres minuscules.
 Une zone de saisie permettant la saisie du nombre de lettres minuscules.
 Une zone de texte demandant la saisie du nombre de chiffres.
 Une zone de saisie permettant la saisie du nombre de chiffres.
 Un bouton nommé "Créer votre mot de passe".
 Une zone texte pour afficher les différents messages résultats.

Les nombres saisis doivent respecter les contraintes suivantes :


 Nombre de caractères doit être compris entre 4 et 20
 Nombre de lettres majuscules, lettres minuscules et chiffres doivent être tous non nuls
 La somme des nombre de lettres majuscules, lettres minuscules et chiffres doit être égale au nombre de
caractères
La génération aléatoire de tout caractère dans le mot de passe doit suivre la démarche suivante :
 Choisir aléatoirement un chiffre entre 0 et 2
 0 donne une lettre en majuscule
 1 donne une lettre en minuscule
 2 donne un chiffre
Ci-après, un algorithme du programme principal dans lequel des modifications seront apportées pour répondre aux
besoins cités ci-dessus :
ALGORITHME Mot_Passe
DÉBUT
Écrire ("Entrer le nombre de carctères :")
Lire (ncar)
Écrire ("Entrer le nombre de lettres majuscules :")
Lire (nmaj)
Écrire ("Entrer le nombre de lettres minuscules :")
Lire (nmin)
Écrire ("Entrer le nombre de chiffres :")
Lire (nchif)
Si ncar<4 ou ncar>20 Alors
mes  "Nombre de caractères doit être entre 4 et 20"
Si non Si nmaj=0 ou nmin=0 ou nchif=0 Alors
mes  "Valeur nulle interdit"
Si non Si nmaj+nmin+nchif ≠ ncar Alors
mes  "Nombres non cohérents"
Si non
mes  generer(ncar, nmaj, nmin, nchif)
FinSi
Écrire (mes)
FIN
Travail demandé :
1) Implémenter l’algorithme " Mot_Passe" en Python puis enregistrer le programme, dans votre dossier de
travail, sous le nom "MotP0".
2) Dans votre dossier de travail, créer une copie du programme "MotP0"et l’enregistrer sous le nom "MotP1".
Dans ce fichier :
a) Transformer le programme écrit en un module nommé "Affiche".
b) Développer le module "generer" permettant de générer aléatoirement un mot de passe de (ncar)
caractères dont (nmaj) lettres en majuscules, (nmin) lettres en minuscules et (nchif) chiffres
3) Concevoir une interface graphique comme le modèle cité dans la première page et l’enregistrer sous le nom
"interface".
4) Dans votre dossier de travail, créer une copie du programme "MotP1"et l’enregistrer sous le nom "MotP2".
Dans ce fichier, apporter les modifications nécessaires pour intégrer cette interface graphique dans votre
programme tout en exploitant l’annexe suivant :

Annexe
from PyQt5.uic import loadUi
from PyQt5.QtWidgets import QApplication
……
app = QApplication([])
f = loadUi ("interface.ui")
f.show()
f.Nom_Bouton.clicked.connect (Nom_Module)
app.exec_()

Vous aimerez peut-être aussi