This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
infoh100-projet1 [2013/11/25 20:40] stefeppe |
infoh100-projet1 [2013/11/25 23:50] stefeppe |
||
---|---|---|---|
Line 6: | Line 6: | ||
Toutefois, pour tempérer le ton péremptoire de l'énoncé, nous vous suggérons de prendre l'éventuel dépassement de cette limite comme un signal qui devrait vous inciter à vous arrêter et à reconsidérer la manière dont vous avez construit votre fonction: fait-elle bien une seule chose bien définie? ne serait-il pas mieux (plus clair) de créer/appeler l'une ou l'autre fonction? Dans des cas particuliers et justifiés, un léger dépassement de cette limite peut être acceptable, voire nécessaire. | Toutefois, pour tempérer le ton péremptoire de l'énoncé, nous vous suggérons de prendre l'éventuel dépassement de cette limite comme un signal qui devrait vous inciter à vous arrêter et à reconsidérer la manière dont vous avez construit votre fonction: fait-elle bien une seule chose bien définie? ne serait-il pas mieux (plus clair) de créer/appeler l'une ou l'autre fonction? Dans des cas particuliers et justifiés, un léger dépassement de cette limite peut être acceptable, voire nécessaire. | ||
- | * //**eife**// | + | * **//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. | ||
+ | |||
+ | * **//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)?//** \\ | ||
+ | La librairie random ayant été vue lors des travaux pratiques, l'utilisation de //toutes// les fonctions qui la composent est permise. Il en va de même pour l'ensemble des méthodes liées aux types ''str'', ''list'' et ''tuple''. | ||
+ | |||
+ | * **//Que font les fonctions fournies //''word_in_place''// et //''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 :\\ | ||
+ | ''A B S E\\ | ||
+ | A L U H\\ | ||
+ | **M** **E** Y T\\ | ||
+ | N **R** B J''\\ | ||
+ | la fonction renvoie ''True'' pour "''MER''" mais pas pour "''SALUT''" | ||
+ | |||
+ | ''word_on_board("MER", board) == True'' | ||
+ | ''word_on_board("SALUT", board) == False'' | ||
+ | |||
+ | - "**''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) | ||
+ | Dans l'exemple ci dessus :\\ | ||
+ | ''word_in_place("MER", board, 0, 1) == False''\\ | ||
+ | ''word_in_place("MER", board, 2, 0) == True''\\ | ||
+ | ''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''). | ||
+ | Ce découpage imposé est là pour vous aider. | ||
+ | |||
+ | /* | ||
+ | word_in_place est la fonction la plus difficile du projet. | ||
+ | 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. | ||
+ | */ |