Stéphane Lens
Teaching assistant

Computer Science and Artificial Intelligence

Université de Liège

Travail de Programmation fonctionnelle (2012-2013) :




La Loi de Zipf (https://fr.wikipedia.org/wiki/Loi_de_Zipf), prévoit que dans un texte donné, la fréquence d'occurrence f(n) d'un mot est liée à son rang n dans l'ordre des fréquences par une loi de la forme f(n)= K/n où K est une constante.

Exemple pour Ulysses de James Joyce (pg4300.txt).
Exemple

Il est demandé d'écrire un programme scheme capable de prendre en entrée un fichier texte (de préférence en anglais pour éviter les problèmes de flexions), de renvoyer la liste des 100 mots les plus fréquents et leur fréquence associée, ainsi que de générer un graphique tel que donné à l'exemple précédent.

Précissions :

  • Une bonne source de livres au format texte est le projet Gutenberg.
  • Vous pouvez utiliser les possibilités graphique de drracket pour afficher votre graphique. Mais vous pouvez aussi utiliser un outil tel que gnuplot. (Dans ce cas, l'appel à gnuplot devra se faire directement depuis le programme scheme.)

Remarques :

  • Ce travail est à réaliser individuellement.
  • Votre travail doit pouvoir fonctionner sous Linux. (Les machines ms800 seront utilisées comme référence.)
  • Le travail est à renvoyer sous la forme d'une archive .tar.gz (scheme_nom.tar.gz). L'archive contiendra les sources de votre programme ainsi qu'un rapport succinct au format PDF expliquant votre démarche ainsi que tout ce que vous jugez utile à la correction.
  • Ce travail est à rendre pour le 02/05/2013 à 23h59 au plus tard !


  <-- Retour à la page du cours
S. Lens - Valid XHTML 1.0 Strict