Consignes pour les projets :

Numérique et sciences informatiques

start up

Projet 7 : Le FaustinBook

Description du mini projet

En utilisant les connaissances acquises jusqu'à présent, vous allez écrire un programme de gestion de données.

Cahier des charges

Ce programme devra proposer le menu suivant à l'utilisateur :

0-quitter
1-écrire dans FaustinBook
2-rechercher dans FaustinBook
Votre choix ?>

  • Si le choix est 0 : Le programme sera stoppé.

  • Si le choix est 1 :

    L'utilisateur devra saisir un nom ou 0 s'il veut terminer la saisie (" Nom (0 pour terminer) : ") :

    L'utilisateur entre 0 => le programme devra le renvoyer vers le menu

    L'utilisateur entre un nom => le programme devra lui demander de saisir le numéro de téléphone correspondant au nom. Une fois le numéro saisi, le programme devra lui proposer d'entrer un nouveau nom (ou 0 pour terminer)...

Exemple de saisie d'un utilisateur (toto) :

0-quitter
1-écrire dans FaustinBook
2-rechercher dans FaustinBook
Votre choix ?
1
Nom (0 pour terminer) :toto
Maths
NSI
0-quitter
1-écrire dans FaustinBook
2-rechercher dans FaustinBook
Votre choix ?
0

  • Si le choix est 2 :

    L'utilisateur devra saisir le nom recherché (" Entrer un nom : ").

    Si le nom recherché est présent dans FaustinBook, le programme devra afficher " L'élève recherché suit : " suivi des spécialités correspondant au nom saisi.

    Si le nom recherché est absent de FaustinBook, le programme devra afficher " Inconnu ".

    L'utilisateur est ensuite redirigé vers le menu principal.

Recherche des utilisateurs (toto et titi) :

0-quitter
1-écrire dans FaustinBook
2-rechercher dans FaustinBook
Votre choix ?
2
Entrer un nom :toto
Les spécialités sont : Maths et NSI
0-quitter
1-écrire dans FaustinBook
2-rechercher dans FaustinBook
Votre choix ?
2
Entrer un nom :titi
Inconnu
0-quitter
1-écrire dans FaustinBook
2-rechercher dans FaustinBook
Votre choix ?

Le code du programme

Les noms et spécialités devront être stockés dans une liste. Votre programme devra être composé au minimum de 3 fonctions : une fonction " menu ", une fonction " ajouter " et une fonction " rechercher ".

Entraînement 1:

Implémenter une fonction ajouter(nom,spe1,spe2) qui permette d'écrire le nom et les spécialités dans une liste

def ajouter():
                """
                Cette fonction ajoute un nom et 2 spécialités dans une liste.

                """	

Entraînement 2:

Implémenter une fonction rechercher_nom(nom) qui permet de rechercher un nom dans la liste

def rechercher_nom(nom):
                """
                Cette fonction recherche un nom dans une liste et renvoie les spécialités correspondantes
                """	

Entraînement 3:

Implémenter une fonction rechercher_spe(spe) qui permet de rechercher les élèves qui suivent une spécialité du lycée

def rechercher_spe(spe):
                """
                Cette fonction recherche une spé dans une liste et renvoie le nom de l'élève
                """	

Entraînement 4:

Implémenter une fonction compte_spe(spe) qui permet de compter les élèves qui suivent une spécialité du lycée

def compte_spe(spe):
                """
                Cette fonction compte une spé dans une liste et renvoie le nombre d'élève suivant cette spécialité.
                """	

Entraînement 5:

Implémenter une fonction menu() qui permet la saisie dans la liste des noms, des spatialités, de la fonction rechercher(), de la fonction ajouter(), de la fonction compter() et pour quitter le programme.

def menu():
                """
                Cette fonction permet de gérer la saisie dans la liste des noms, des spécialités,
                 de la fonction rechercher(), de la fonction ajouter() et pour quitter le programme.
                """	

Le code du programme :

Amélioration 1 :

Utilisation d'un dictionnaire pour le FaustinBook.

Amélioration 2 :

Lecture et écriture des données à partir d'un fichier texte.

Amélioration 3 :

Utiliser pygame pour améliorer l'affichage du FaustinBook