PIX 111 - 3ième exercice: MOTUS Esisar, décembre 2022 Pour découvrir le jeu: https://motus.absolu-puzzle.com/ Description : Ddans le contexte de cet exercice, nous utiliserons un dictionnaire de mots sous la forme d’un fichier texte utilisant uniquement des caractères de la table d’encodage ASCII (en majuscules, pas de caractères accentués par exemple). Les mots ne doivent contenir que 6 caractères alphabétiques, pour être plus pratique les minuscules seront converties en majuscules lors du chargement du fichier dictionnaire. On vous fourni un dictionnaire français complet, ainsi que le processus de chargement de mots (lecture ligne par ligne du fichier). Il y a xxx mots de 6 lettres dans ce fichier, qui sont à copier dans la structure de donnée globale dictionnaire. Règle du jeu: Le joueur dispose d’un indice : le premier caractère du mot à trouver. Le joueur doit deviner un mot en proposant des mots valides (présents dans le dictionnaire), le jeu lui indique pour chaque caractère s’il est bien placé, mal placé ou non utilisé dans le mot à deviner. Le joueur dispose d’un nombre de tentatives limité. Travail attendu : 0- prendre en main le code fourni (fichier .h , main, makefile) 1 – Répondez aux questions suivantes en prenant les hypothèses suivantes : - On considère que le mot proposé est présent (même si on cherche à le vérifier) dans le dictionnaire, et qu’il suit une loi uniforme, c’est à dire que chaque mot du dictionnaire à la même probabilité d’être proposé. - Dans un premier temps le dictionnaire n’est pas ordonné. - On code la fonction chercheMot de manière simple, c’est à dire que l’on parcourt tout le dictionnaire pour comparer le mot proposé avec chaque mot du dictionnaire l’un après l’autre. Quel nombre d’itérations minimum, maximum et moyen doit on faire pour vérifier la présence du mot proposé dans le dictionnaire ? 2- implémenter cette recherche et le jeu du motus. La question suivante sera à réaliser chez vous si vous n'avez pas terminé. 3- On considère maintenant que le dictionnaire est ordonné. Quel nombre d’itérations minimum, maximum et moyen doit on faire pour vérifier la présence du mot proposé dans le dictionnaire ? Avec ces considérations, pouvez-vous envisager une amélioration de l’algorithme de recherche d’un mot ? Il y a plusieurs pistes possibles, mais certaines peuvent être difficiles à implémenter avec les seules notions de C abordées jusqu’à présent. Choisissez donc une solution que vous pourrez implémenter. Vous devrez tout de même justifiez votre choix par des calculs précis (en vous aidant par exemple des données du contenu du dictionnaire). Vous devrez aussi estimé les structures des données supplémentaires à mettre en place.