0% ont trouvé ce document utile (0 vote)
12 vues3 pages

Devcont 34 Èmesi

Le devoir de contrôle demande aux élèves de concevoir une interface graphique pour gérer les fiches d'employés d'une société, en sauvegardant les données dans des fichiers texte. Les tâches incluent la génération de mots de passe basés sur une suite de Fibonacci et l'identification des employés chanceux. Les élèves doivent également développer des modules en Python pour ajouter, afficher et générer des données dans les fichiers appropriés.

Transféré par

bouatay adel
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)
12 vues3 pages

Devcont 34 Èmesi

Le devoir de contrôle demande aux élèves de concevoir une interface graphique pour gérer les fiches d'employés d'une société, en sauvegardant les données dans des fichiers texte. Les tâches incluent la génération de mots de passe basés sur une suite de Fibonacci et l'identification des employés chanceux. Les élèves doivent également développer des modules en Python pour ajouter, afficher et générer des données dans les fichiers appropriés.

Transféré par

bouatay adel
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

Lycée Secondaire Dar Chaâbane El Fehri Classe : 4ème SI 1

Date : 30/01/2025
DEVOIR DE CONTROLE N°3 Durée : 1 Heure
(Epreuve Pratique) Discipline : Informatique
Réalisé par Mme Hami DHAMEN Matière : Algorithmique & programmation
Enoncé :
Une société XYZ sauvegarde les fiches de ses employés dans un fichier texte nommé
"employés.txt". Chaque ligne de ce fichier contient une fiche d’un employé sous la forme
d’un identifiant (entier positif composé de 6 chiffres) suivie du nom et prénom de l’employé
séparés par un espace (le nom et le prénom sont de chaines de caractères de longueur ≥5 et
formés uniquement des lettres majuscules)
La société veut réaliser les tâches suivantes :
1) Générer les mots de passe de différents employés et mettre le résultat dans un fichier
d’enregistrements nommé "motpasse.dat". Chaque enregistrement est formé de champs :
• Num : identifiant de l’employé provenant du fichier "employés.txt"
• Motpass : mot de passe générée selon le principe décrit ci-dessous
Le mot de passe de chaque employé est créé en respectant les étapes suivantes :
a) Calculer le terme Sp de la suite S qui est définie par :
S0 = "0"
S1 = "1"
Sn = Sn-1 + Sn-2

p= numéro de la ligne contenant la fiche de l’employé correspondant dans le fichier


"employés.txt" (p=0 pour le premier employé, p=1 pour le deuxième employé et ainsi de
suite…)
b) Calculer nb0=nombre d’occurrences du chiffre "0" dans Sp et nb1 =nombre
d’occurrences du chiffre "1" dans Sp
c) Le mot de passe sera= les trois premiers caractères du nom de l’employé suivi du
caractère "0" suivi de nb0 suivi du caractère "1" suivi de nb1
2) Déterminer et afficher les identifiants de employés chanceux sachant qu’un employé est
considéré chanceux si son mot de passe contient dans son écriture au moins deux chiffres
distincts figurant dans son identifiant
Pour réaliser ces tâches, on se propose de concevoir une interface graphique contenant les
éléments suivants :
• Un label contenant le texte : "Identifiant : "
• Une zone de saisie permettant la saisie de l’identifiant de l’employé
• Un label contenant le texte : "Nom : "
• Une zone de saisie permettant la saisie du nom de l’employé
• Un label contenant le texte : "Prénom : "
• Une zone de saisie permettant la saisie du prénom de l’employé
• Un bouton intitulé "Ajouter" permettant d’ajouter une ligne au fichier "employés.txt"
• Une List Widget1 pour afficher le contenu du fichier "employés.txt"
• Un bouton intitulé "Afficher" permettant d’afficher le contenu du fichier
"employés.txt"
• Une Table Widget pour afficher le contenu du fichier "motpasse.dat"

1
• Un bouton intitulé "Générer" permettant de créer et d’afficher le contenu
du fichier "motpasse.dat".
• Une List Widget2 pour afficher la liste des identifiants de employés chanceux
• Un bouton intitulé "Chercher"
Travail demandé :
1) Créer un répertoire nommé « votrenometprénom » dans D : et enregistrer au fur et à
mesure tous les fichiers solution au problème posé dans ce répertoire.
2) Créer, en utilisant l’éditeur de texte disponible, le fichier texte "employés.txt" et y
saisir le contenu présenté dans l’exemple ci-dessous en respectant le contenu de
chaque ligne

3) Concevoir une interface graphique comme illustrée dans la figure suivante et


l’enregistrer sous le nom "interface"

4) En utilisant Python, créer un nouveau fichier nommé "pratique.py" qui permet


d’appeler l’interface crée en 3) et l’enregistrer dans votre dossier de travail
5) Apportez au fichier "pratique.py" les modifications suivantes :
• développer le module "ajouter", qui s’exécute suite à un clic sur le bouton "Ajouter"
et permettant, lorsque toutes les contraintes sont respectées, d’ajouter la fiche de
l’employé correspondant au fichier "employés.txt" sinon d’afficher, dans le cas
contraire, un message d’alerte via «QMessagebox"
• développer le module "affich", qui s’exécute suite à un clic sur le bouton "Afficher",
permettant d’afficher dans l’élément List Widget1, le contenu du fichier
"employés.txt"
• développer le module "creer", qui s’exécute suite à un clic sur le bouton "Générer"
permettant de créer et remplir le fichier "motpasse.dat" et d’afficher son contenu dans
l’élément Table Widget
• développer le module "chercher", qui s’exécute suite à un clic sur le bouton
"Chercher" permettant d’afficher dans l’élément List Widget2 les identifiants des
employés chanceux

2
Ci-dessous quelques captures d’écran montrant des exemples d’exécutions :

Grille d’évaluation :

Traitement Nombre de points


Complétion de l’interface graphique 2
Développement des modules dans le fichier "pratique.py" 16
Complétion de la partie exploitation de l’interface graphique 2

BON COURAGE
3

Vous aimerez peut-être aussi