Vous êtes sur la page 1sur 3

Projet ADA:

Legende : 
italique : pas sur

Types:
Mot:
­ String mot
­ Integer nbOccur

Fichier:
Utiliser un type de base de ADA ?

Packages:
File_I_O :

lireMot(fichier, Mot mot); //lit un mot, le range dans mot et avance d'un mot dans le 
fichier
Boolean estSignificatif(Mot mot); //retourne TRUE si le mot est significatif
lireFichier(fichier, List<Mot> mots); //lit le fichier et range les mots dans une liste de 
mots (liste triee? Doublons ou nbOccur comptees?)
writeFile(String fileName, List<Mot> mots); // ecrit la liste de mots dans le fichier de 
sauvegarde suivant la forme definie
lireSauvegarde(List<Mot> mots); // charge le fichier de sauvegarde dans mots

Parser:
LoadFile(String nomFichier, List<Mot> mots); // Charge le fichier puis charge les mots
TrierListe(List<Mot> mots); //Trie la liste de mot par ordre alphabetique et gere les 
doublons (en comptant nbOccur)
List<Mot> recherchePrefixe(String prefixe); // retourne tous les mots ayant ce prefixe
List<Mot> rechercheSuffixe(String suffixe); // retourne tous les mots ayant ce suffixe
List<Mot> rechercheSousMot(String SousMot); // retourne tous les mots ayant ce sous­
mot
Integer nbTotalMots(List<Mot> mots); //retourne le nombre total de mots
Integer nbMoyenOccur(List<Mot> mots); // retourne le nombre moyen d'occurences
Integer longMoyenne(List<Mot> mots); // retourne la longeur moyenne d'un mot
Integer longSup(Integer long, List<Mot> mots); // retourne le nombre mots ayant un taile 
>= a long
List<Mot> head(Integer n, List<Mot> mots); // retounr les n premiers mots tries par 
nbOccur DESC
fusion(String mot1, String mot2, List<Mot> mots); // fusionne mot1 dans mot2, seul 
mot2 est conserve, mot2.nbOccur = mot1.nbOccur + mot2.nbOccur
sauvegarde(); // sauvegarde la liste de mots
chargement(); // charge la liste de mots sauvegardee

union(Mot mot, Integer nbOccur1, Integer nbOccur2); // rempli les 2 entiers avec le 
nbOccur dans chaque texte
List<Mot> intersect(); // ???
List<Mot> diff(); // ???

Main_and_UI:
Integer menu();// affiche un menu proposant les fonctions principales du logiciel :

-
Charger un fichier (ou plusieurs)
-
Afficher liste de mots triee par nbOccur
-
Afficher liste de mots triee par ordre alphabetique
-
Afficher les n premiers (par nbOccur)
-
Recherches:
* prefixe
* suffixe
* sous-mot
- Fusion
- Statistiques (a definir)
- Comparer 2 textes (afficher une liste des textes
dispos ensuite? ou alors demander les nom de fichiers a charger)
- Sauvegarder liste de mots
- Charger la liste de mots

String nomFichier(); // demande le nom du fichier a charger, retourne le nom du fichier
afficherListeNbOccur(); // affiche la liste de mots par nbOccur
afficherListeAlpha(); // affiche la liste par alpha
afficherTete();  // demande un entier et affiche les n premiers
recherchePrefixe(); // demande un prefixe puis affiche les mots ayant ce prefixe
rechercheSuffixe(); // demande un suffixe puis affiche les mots ayant ce suffixe
rechercheSousMot(); // demande un sous­mot puis affiche les mots ayant ce sous­mot
fusion(); // demande 2 mots, les fusionne puis affiche le nouveau compte
sauvegarde();// sauvegarde
chargement(); // chargement

comparer2Textes(); // affiche un nouveau menu

Menu2textes:
- Nombre d'occurences d'un mot
- Mots employes par les 2 auteurs
- Mots employes par un seul auteur (demande quel
auteur? ou alors affiche 2 listes?)

nbOccurDoubleTextes(); // demande le mot puis affiche les 2 nbOccur

Fonctions InOut
String askString(String question); // affiche la question et demande une reponse 
sous forme de chaine de caracteres
Integer askInteger(String question); // affiche la question et demande une reponse 
sous forme d'entier
Integer askMenuEntry(); // apelle askInteger et verifie que ce soit une entree du 
menu
showList(List<Mot> mots, Boolean nbOccur = true); // affiche la liste de mots 
avec les nombre d occurences si nbOccur = true (par defaut)
message(String message); // affiche le message a l'ecran
showNbOccur(Mot mot1, Mot mot2); // affiche le mot (mot1.mot = mot2.mot) + 
les nbOccur respectfis