This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
infoh100-projet1 [2013/11/25 21:08] stefeppe |
infoh100-projet1 [2013/12/05 06:22] 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 24: | Line 34: | ||
''word_on_board("SALUT", board) == False'' | ''word_on_board("SALUT", board) == False'' | ||
- | - **''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. | ||
- | /* | + | * **//Faut-il placer aléatoirement les dés sur le tableau?//** \\ |
- | word_in_place est la fonction la plus difficile du projet. | + | 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 est: oui. 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. |
- | 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. | + | |
- | */ | + | * **//L'énoncé du projet spécifie qu'un jeu est composé de 5 tours. A quoi alors sert la fonction ''ask_yes_no'' fournie?//** \\ |
+ | 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. |