Le sujet choisi est : correcteur orthographique.
[...] dico)(list)) ((and (equal? (valeur dico)) (equal? (car liste_char))) (list)) ((and (equal? (valeur dico) (car liste_char)) (equal? (valeur (fils dico)) (not (null? (freres (noeud (valeur (freres dico)) (fils (freres dico)) (freres(freres ((equal? (valeur dico) (car liste_char)) (noeud (valeur dico) (supprimer (fils dico) (cdr liste_char)) (freres dico))) (else (noeud (valeur dico) (fils dico) (supprimer (freres dico) liste_char))) ) ) ) III. [...]
[...] (define creer (lambda (mot) (if (null? mot) (list) (noeud (car mot) (creer (cdr mot)) ) ) ) II. Gestion du dictionnaire : dictionnaire.scm Il faut tout d'abord charger certains fichiers afin de pouvoir utiliser certaines fonctions : (load "fichiers.scm") (load "string_manip.scm") (load "arbre.scm") Insertion d'un mot dans le dictionnaire : Il faut d'abord vérifier si le mot est déjà pressent dans le dictionnaire (cela évite d'effectuer une insertion inutile et permet donc un gain de temps si on insère plusieurs mots) Si le mot est réellement à ajouter, il suffit de vérifier si le ou les premiers caractères du mot sont présents dans le dictionnaire. [...]
[...] Malheureusement cette methode n'est pas correcte car nous n'arrivons pas à supprimer un mot s'il n'a pas de frere sur sa derniere lettre Nous avons testé une autre méthode dont nous donnons le code en fin de ce rapport dans la partie conclusion. ;FONCTION QUI SUPPRIME UN MOT DU DICTIONNAIRE ;S'IL Y EST DEJA ;ET SAUVEGARDE LES CHANGEMENTS (define suppression (lambda (dico mot fic) (delete-file (symbol->string fic)) (if (recherche dico mot) (let( (liste(lister mot)) ) (enregistrer (supprimer dico liste) fic) ) (enregistrer dico fic) ) (let( (d2 (recuperer_dico fic)) ) d2 ) ) ) ;FONCTION PERMETTANT DE SUPPRIMER UN MOT DU DICTIONNAIRE: (define supprimer (lambda (dico liste_char) (cond ((null? [...]
[...] Cette fonction est utilisée dans le cas de la correction d'un fichier texte : les mots ne figurant pas dans le dictionnaire sont alors retournés sous forme de liste et nous les affichons un par un a l'écran. ;fonction afficher_func(liste ; si l est vide ; afficher - ; sinon ; afficher(car ; nouvelle ligne ; afficher_func(cdr (define afficher (lambda (if(null? (display (begin (display (car (newline) (afficher (cdr ) ) ) ) V. Correction d'un fichier texte : correction.scm (load "dico.scm") (load "string_manip.scm") La correction d'un fichier texte consiste a lire les mots contenus dans ce fichier un par un et de vérifier leur présence dans le dictionnaire passé en paramètre. [...]
[...] Pour récupérer un dictionnaire enregistré dans un fichier, il faut ouvrir le fichier en lecture, le lire et le fermer. Enregistrement du dictionnaire dans un fichier : ;Procédure enregistrer(dico fic){ ; Définir port comme étant fic ouvert en écriture ; Ecrire dico sur le port ; Fermer le port } (define enregistrer (lambda (dico fic) (let( (port (open-output-file (symbol->string ) (begin (write dico port) (close-output-port port) ) ) ) ) Récupération d'un dictionnaire à partir d'un fichier : ;fonction recuperer_dico(fic){ ; définir port comme étant fic ouvert en lecture ; définir objet comme étant l'objet retourné par la lecture du port ; fermer port ; retourner objet ; ;;FONCTION POUR RECUPERER L'ARBRE BINAIRE D'UN FICHIER ;;RETOURNE LE PREMIER OBJET DU FICHIER (define recuperer_dico (lambda (fic) (letrec( (port (open-input-file (symbol->string (object (read port)) ) (close-input-port port) object ) ) ) Enregistrement des statistiques dans un fichier : ;;fonction permettant d'enregistrer les statistiques dans un fichier ;et de concaténer les nouvelles informations aux anciennes ;si le fichier existe déjà (define enregistrer_stat (lambda (tps fic) (if (file-exists? [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture