Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
infoh100-projet1 [2013/11/25 21:04]
stefeppe
infoh100-projet1 [2013/12/05 06:22] (current)
stefeppe
Line 8: Line 8:
   * **//Dois-je rédiger les commentaires (//''​docstrings''//​) en anglais?//​** \\   * **//Dois-je rédiger les commentaires (//''​docstrings''//​) en anglais?//​** \\
 Si l'​anglais est l'​option préférée,​ nous ne sanctionnerons pas les commentaires en français. Mieux vaut un commentaire en français clair, qu'une description anglaise incompréhensible. Si l'​anglais est l'​option préférée,​ nous ne sanctionnerons pas les commentaires en français. Mieux vaut un commentaire en français clair, qu'une description anglaise incompréhensible.
 +
 +  * **//​J'​ai des problèmes pour importer le module PYC fourni avec l'​énoncé. Que dois-je faire?//** \\
 +Nous avons mis à disposition une version //non compilée// du module. Celui-ci est à importer de manière similaire que la version compilée: ​
 +  - décompresser le fichier fourni "​boggle_mod.tar.gz",​
 +  - copier le fichier Boggle_mod.py dans le répertoire de votre projet,
 +  - importer dans votre code avec ''​import Boggle_mod''​ (ceci //​remplace//​ l'​ancien import!)
 +Pour les étudiants ayant utilisé les modules **compilés**,​ il n'y a **rien** à faire. Les deux versions (compilée et non-compilée) fonctionnent de la même manière et contiennent les mêmes fonctions!
 +
 +  * **//Puis-je utiliser plus d'un //''​return''//​ dans une fonction?//​** \\
 +Non: un seul ''​return''​ par fonction. Il s'agit là d'une convention adoptée dans ce cours. Cela ne devrait d'​ailleurs pas avoir de répercutions dramatiques sur votre code.
  
   * **//Puis-je utiliser la librairie //''​random''//​ (et/ou d'​autres)?//​** \\   * **//Puis-je utiliser la librairie //''​random''//​ (et/ou d'​autres)?//​** \\
Line 14: Line 24:
   * **//Que font les fonctions fournies //''​word_in_place''//​ et //''​word_on_board''//?//​**   * **//Que font les fonctions fournies //''​word_in_place''//​ et //''​word_on_board''//?//​**
   - "​**''​word_on_board''​**"​\\   - "​**''​word_on_board''​**"​\\
-Cette fonction renvoie True si le mot est présent dans la grille EN RESPECTANT LES RÈGLES DU BOGGLE. Donc dans la grille ci dessous :\\ +Cette fonction renvoie ​''​True'' ​si le mot est présent dans la grille EN RESPECTANT LES RÈGLES DU BOGGLE. Donc dans la grille ci dessous :\\ 
-A B S E\\+''​A B S E\\
 A L U H\\ A L U H\\
 **M** **E** Y T\\ **M** **E** Y T\\
-N **R** B J\\ +N **R** B J''​\\ 
-la fonction renvoie True pour "​MER"​ mais pas pour "​SALUT"​+la fonction renvoie ​''​True'' ​pour "''​MER''​" mais pas pour "''​SALUT''​"
  
-word_on_board("​MER",​ board) == True +''​word_on_board("​MER",​ board) == True''​ 
-word_on_board("​SALUT",​ board) == False +''​word_on_board("​SALUT",​ board) == False''​
- +
-EXPLICATION DE word_in_place :+
  
 +  - "​**''​word_in_place''​**"​\\
 Elle fait la même chose uniquement si le mot commence dans la case donnée en paramètre (attention les indices commencent à 0 donc la case en haut à gauche est la case 0,0) Elle fait la même chose uniquement si le mot commence dans la case donnée en paramètre (attention les indices commencent à 0 donc la case en haut à gauche est la case 0,0)
-Dans l'​exemple ci dessus : +Dans l'​exemple ci dessus :\\ 
-word_in_place("​MER",​ board, 0, 1) == False +''​word_in_place("​MER",​ board, 0, 1) == False''​\\ 
-word_in_place("​MER",​ board, 2, 0) == True +''​word_in_place("​MER",​ board, 2, 0) == True''​\\ 
-word_in_place("​MER",​ board, 3, 1) == False +''​word_in_place("​MER",​ board, 3, 1) == False''​
- +
-Le sujet sera modifié pour être plus clair pour tous.+
  
-Il est évident que word_on_board appellera word_in_place (de la même manière que play_boggle appelera play_one_round).+Il est évident que ''​word_on_board'' ​appellera ​''​word_in_place'' ​(de la même manière que ''​play_boggle'' ​appelera ​''​play_one_round''​).
 Ce découpage imposé est là pour vous aider. Ce découpage imposé est là pour vous aider.
  
-CONSEILS:+  * **//Faut-il placer aléatoirement les dés sur le tableau?//​** \\ 
 +En d'​autres termes, //les dés du tableau doivent-ils,​ en plus d'​afficher une face aléatoire, être placés également aléatoirement sur le tableau//? La réponse estoui. Le premier dé renvoyé par ''​get_dices()''​ ne doit donc pas se retrouver systématiquement sur la première case du tableau; cette position (ainsi que celle des autres dés) doit changer aléatoirement d'une partie à l'​autre.
  
-word_in_place est la fonction la plus difficile ​du projet. +  * **//​L'​énoncé ​du projet ​spécifie qu'un jeu est composé de 5 toursA quoi alors sert la fonction ''​ask_yes_no''​ fournie?//​** \\ 
-Vous pouvez coder les fonctions dans l'ordre que vous voulez, vous pouvez ​coder par exemple word_on_board en considérant que word_in_place marche.+Il s'agit d'une ambiguïté de l'énoncé. Concrètement, vous pouvez:  
 +  - demander à l'​utilisateur s'il veut rejouer après les 5 tours, ou  
 +  - ne rien lui demander et quitter le programme après les 5 tours. ​  
 +Nous acceptons les deux possibilités.
 
infoh100-projet1.1385409881.txt.gz · Last modified: 2013/11/25 21:04 by stefeppe