Home

INFO-H-100 : Introduction à la programmation Projet 2 : Jeu de

image

Contents

1. 3 Pour donner l acc s Bob Alice doit aller sur le site web du serveur Rhodecode http informa2 ulb ac be et l aller chercher les informations sur son projet en cliquant sur INFO H 100 puis sur 2011 puis sur 2 et enfin sur le nom de son projet 4 Une fois sur la page de r sum de son projet Alice doit encore cliquer sur Options en haut droite puis sur Settings dans le menu qui appara t 5 Sur la page de configuration du projet tout en bas gauche se trouve le menu pour donner acc s quelqu un d autre Alice doit alors cocher la troisi me case write et entrer le net id de Bob dans la case de texte puis cliquer sur Save 6 Bob a maintenant acc s au d p t d Alice comme si c tait le sien et peut donc galement cloner le d p t et travailler sur le code Une fois l acc s configur pour les deux tudiants il faut encore effectivement utiliser le serveur comme point de rencontre Pour coordonner l effort il faut que les deux tudiants synchronisent r guli rement leur version avec le serveur Si Alice et Bob ont tous les deux modifi s le m me fichier sur leurs ordinateurs respectifs la synchroni sation peut poser probl me En g n ral Mercurial arrivera s en sortir tant qu Alice et Bob ont modifi des morceaux diff rents du fichier Prenons un cas pratique Si Alice modifie le fichier main py sur son ordinateur pour le synchroniser avec le serveur elle de vra utiliser
2. Alice 5
3. Enonc et FAQ disponibles surhttp cs ulb ac be public teaching infoh100 projets UNIVERSITE LIBRE DE BRUXELLES Mars 2012 Ecole Polytechnique de Bruxelles INFO H 100 Introduction la programmation Projet 2 Jeu de Scrabble On vous demande de r aliser un jeu de Scrabble simplifi en Python 2 7 Fonctionnement r el du jeu Le Scrabble marque d pos e est un jeu de soci t et un jeu de lettres dont l objectif est de r aliser des points en pla ant des mots au d part de tirages al atoires de lettres sur une grille carr e dont certaines cases sont prim es Le plateau de jeu est une grille carr e de 15 sur 15 soit 225 cases en tout dont certaines cases color es dites cases multiplicatrices valorisent la lettre ou le mot plac dessus Il y a 102 lettres en tout dans la version francophone La lettre E est la plus fr quente avec 15 occurrences mais ne vaut qu un point tandis que les lettres ch res J K Q W X Y et Z sont uniques mais valent 8 J et Q ou 10 points K W X Y et Z Chaque joueur dispose d un chevalet contenant ses 7 lettres Au premier tour et apr s avoir jou le joueur tire al atoirement des lettres dans le sachet afin de compl ter son chevalet Le premier mot doit passer par la case centrale souvent recouverte d une toile et les mots suivants doivent s appuyer sur des mots d j plac s Le joueur qui parvient placer 7 lettres en posant un mot re oit un
4. la lettre le nombre de jetons de cette lettre suivis des points de cette lettre Extrait du fichier E 15 1 A91 I 8 1 3 Si vous voulez utiliser une librairie non vue au cours veuillez demander l autorisation par mail vos assistants 4 http cs ulb ac be public teaching infoh100 projets 2 Enonc et FAQ disponibles surhttp cs ulb ac be public teaching infoh100 projets Apports personnels Les apports personnels seront valoris s hauteur de 5 points sur 20 En d autres mots un proj et parfait sans apport personnel aura une valeur de 15 points sur 20 Ces apports personnels peuvent tre par exemple des r gles lignor es dans la version propos e ci dessus Voici quelques exemples d apports personnels V rifier que le mot entr s appuie sur un mot existant difficult moyenne Le mode multijoueur difficult moyenne Les cases multiplicatrices difficile Le scrabble facile Les lettres blanches ou jokers difficile Changer les lettres difficult moyenne Affichage am lior gr ce l Art ASCII facile S parer le code en au moins deux modules deux fichiers py Le premier module conti V rifier et comptabiliser les nouveaux mots form s perpendiculairement au mot plac tr s difficile endra les fonctions logiques du projet le mod le v rifier qu un mot est dans le dictionnaire ajouter un mot au plateau de jeu etc Le second module
5. infoh100 projets Programme r aliser On vous demande de r aliser uniquement l aide de la mati re vue au cours et aux s ances d exer cicesf un jeu de Scrabble simplifi un seul joueur en Python 2 7 Votre programme devra se d rouler comme suit 1 Tout d abord votre programme chargera en m moire le dictionnaire officiel du Scrabble ainsi que l ensemble des lettres et leurs scores respectifs disponibles sous forme de fichiers textes sur la page web des projetsfi Ces fichiers devront obligatoirement se trouver dans le m me r pertoire que votre programme Le format de ces fichiers est d taill ci dessous 2 Ensuite un tirage al atoire de 7 lettres dans le sachet sera effectu pour initialiser le chevalet du joueur 3 Pour placer un mot le joueur entre le mot complet m me s il utilise des lettres pr sentes sur le plateau sa direction horizontale ou verticale ainsi que la position de la premi re lettre du mot placer sur le plateau Les indices des positions commencent 0 Le premier mot doit obligatoire ment passer par la case centrale en 7 7 4 Une fois le mot entr par l utilisateur le syst me doit v rifier les conditions suivantes a Le mot existe dans le dictionnaire fourni Les diacritiques sont ignor es b Le mot entr ne d passe pas les bornes du plateau c Le mot et sa position sont compatibles avec les lettres actuellement sur le plateau d Le joueur poss de les lettre
6. agrafes pas de plastique ni de reliure devra tre rendu au bureau UB4 131 3 Une copie du rapport au format PDF devra se trouver dans le d p t Mercurial Ces d livrables devront tre rendus pour le 30 avril 2012 12h30 Les groupes remettant leur projet apr s cette limite seront p nalis s Vous devrez d fendre votre projet devant les assistants lors des semaines 23 et 24 L valuation de ce projet prendra en compte des points suivants La r solution du probl me nonc Le respect scrupuleux de l nonc Le respect scrupuleux des conventions 1 et des r gles de bonne pratique publi es sur le site web des projets La qualit du rapport int r t pr sentation concision grammaire et orthographe Votre d fense en salle machine devant les assistants L efficacit de vos algorithmes et structures de donn es en restant bien s r dans le cadre de la mati re vue aux cours et aux s ances d exercices Les l ves assistants sont disponibles les midis dans la salle Socrate afin de r pondre vos questions BON TRAVAIL 8 Bien que vous puissiez utiliser Mercurial uniquement pour remettre votre projet la derni re minute il s agit la base d un logiciel con u pour faciliter le travail en groupe Vous pouvez donc l utiliser pour communiquer entre vous comme expliqu en annexe 9 Pour les d livrables lectroniques l heure prise en compte sera celle du serveur N a
7. bonus de 50 points Ce genre de coup est appel scrabble en anglais on dit bonus ou bingo Le joueur a scrabbl La recherche d un scrabble doit videmment tre la priorit lors de chaque coup Si un scrabble se r v le impossible former par exemple sur un tirage tel que BGIOOUV le joueur doit porter son attention sur les cases mot compte triple et mot compte double si elles sont acces sibles Dans le cas contraire le joueur cherchera faire fructifier les lettres ch res d j plac es ou tentera de ma onner placer un mot en le collant un autre mot d j plac sur la grille Les cases lettre compte triple et lettre compte double ont galement leur int r t permettant notam ment de placer une lettre ch re ou semi ch re en pivot doublant ainsi le score octroy par la case multiplicatrice En fran ais chacun des mots jou s doit figurer dans l dition en vigueur de L Officiel du jeu Scrabble ou ODS A titre d exemple le mot WOK permet de gagner un grand nombre de points au Scrabble le W et le K valant chacun 10 points Le placement de ce mot sur une case mot compte double ou mot compte triple est surnomm Coup du Wok P La section pr c dente est inspir e de Wikipedia 1 Voirhttp fr wikipedia org wiki Scrabble lhttp fr wikipedia org wiki Wok Enonc et FAQ disponibles surhttp cs ulb ac be public teaching
8. contiendra les interactions avec l utilisateur la vue c est dire l affichage et les entr es et importera le premier module C est donc ce second module qui sera ex cut pour lancer votre jeu de Scrabble facile Interface graphique difficile prendre rendez vous avec Gary pour explications D livrables 1 Le code source sera rendu au format lectronique sur le serveur Mercurial voir plus bas Chaque fonction devra tre correctement document e C est dire pour chaque fonction son prototype une description succincte de la t che qu elle remplit ses param tres et leur domaine le type et les valeurs possibles le type de ses valeurs de retour et leur domaine et un exemple d utilisation Par exemplel def daysIinMonth month year Calcule le nombre de jours d un mois Arguments month int le mois considere entre 1 et 12 year int l annee consideree Valeurs de retour int Retourne le nombre de jours associes au mois et a l annee consideres Retourne 1 si les parametres ne respectent pas les domaines Exemples gt gt gt print daysInMonth 2 2012 29 gt gt gt print daysInMonth 13 2012 1 lt lt code de la fonction gt gt Rappelez vous que la docstring est le texte qui sera affich lorsque vous tapez help days dans l interpr teur il s agit donc de la documentation n cessaire un programmeur po nMonth ur utiliser la fonction Ce texte ne s adre
9. la commande hg push Mais cela ne fait qu envoyer ses modifications sur le serveur Pour galement recevoir les modifications du serveur Alice doit galement utiliser les deux commandes hg pull pour t l charger les changements et hg update pour int grer les changements du serveur dans son propre projet Au moment o elle ex cute la commande hg push le serveur va refuser le changement s il est incompatible avec la version qu il abrite La commande hg pull fonctionne tou jours puisqu elle ne fait que t l charger les changements sans essayer de les appliquer La commande hg update va par contre rater dans les m mes circonstances que hg push quand les deux versions sont incompatibles Mercurial va alors demander Alice de regarder les deux versions et de choisir celle qu elle veut conserver Une fois ce choix fait Alice peut remettre le code du serveur jour avec hg push Pour plus de d tails vous pouvez consulter le site http hginit com 02 html en ignorant les parties qui expliquent comment mettre en place le d p t central puisque c est fait pour vous par le serveur Rhodecode 13 Cette partie est nouvelle comme dans le cas du premier projet une seule personne avait acc s au serveur le cas de t l charger des modifications depuis le serveur vers l ordinateur local ne se pr sentait pas 14 Cela signifie que Bob a mis jour la version sur le serveur et qu il a modifi les m mes sections du fichier qu
10. s n cessaires pour jouer son mot Si les conditions ne sont pas v rifi es le programme affiche un message d erreur et retourne en 3 5 Si ces conditions sont v rifi es le mot est plac sur la grille et les lettres n cessaires sont retir es du chevalet Seuls les points de ce mot sont calcul s c est dire uniquement la somme des scores des lettres du mot entr y compris les lettres se trouvant d j sur le plateau de jeu Ces points sont ajout s au score du joueur courant Nous ne vous demandons ni de v rifier les mots perpen diculaires au mot plac ni de calculer les points de ces mots ni de prendre en compte les r gles suppl mentaires comme le scrabble ou les cases multiplicatrices 6 Si le sachet n est pas vide le syst me tire al atoirement dans le sachet le nombre de lettres consom m es par le placement du mot pour arriver un total de 7 lettres ou moins si le nombre de lettres restantes ne le permet pas et les ajoute au chevalet Sinon la partie est termin e 7 Le plateau de Scrabble est affich ainsi que le chevalet et le score actuel Le fichier french dic contient l enti ret des mots accept s au Scrabble Chaque ligne de ce fichier contient un mot en majuscule Ces mots sont class s par taille et par ordre alphab tique Extrait du fichier PSYCHISMES PSYCHOGENE PTERANODON Les lettres sont contenues dans le fichier french 1et Chaque ligne se compose de la mani re suivante
11. sse pas l utilisateur du programme le joueur et n explique pas le fonctionnement interne de la fonction il explique uniquement comment utiliser la fonction 5 http www fisf net index php Itemid 52 amp id 29 soption com content amp task view 6 http fr wikipedia org wiki Art ASCII bas surhttp packages python org an_ example _ pypi_ project sphinx html full code example Enonc et FAQ disponibles surhttp cs ulb ac be public teaching infoh100 projets 2 De plus un rapport dactylographi vous est demand Celui ci devra comprendre a Une page de garde indiquant clairement vos noms num ros de matricules et votre s rie b Une explication claire et justifi e de vos choix algorithmiques et de structures de donn es pour les fonctions qui le n cessitent c Un manuel d utilisation illustr de votre programme fini de maximum 2 pages L ensemble du rapport ne devrait pas faire plus de 5 pages Consignes Le projet se fera obligatoirement par groupes de deux tudiants de la m me s rie 1 Le code source sera rendu via le serveur Mercurial de la m me mani re que pour le premier projet On vous demande cette fois de cr er votre d p t dans le groupe INFO H 100 2011 2 Le nom du d p t devra tre lt netid1 gt lt netid2 gt o les deux netids doivent tre dans l ordre alphab tique Par exemple boverhae gaverha fl 2 Le rapport au format papier uniquement des feuilles et des
12. ttendez pas la derni re minute 10 http cs ulb ac be public teaching infoh100 conventions 11 http cs ulb ac be public teaching infohi00 bonne pratique 12 Leur horaire est e ici lhttp cs ulb ac be public teaching infoh100 horaire_des_ guidances Enonc et FAQ disponibles surhttp cs ulb ac be public teaching infoh100 projets Annexe Utilisation en groupe de Mercurial Il existe plusieurs mani res d utiliser Mercurial pour faciliter le travail en groupe La plus simple consiste utiliser un d p t commun sur le serveur ce qui n cessite videmment que les deux membres du groupe aient acc s au d p t Le d p t doit quand m me tre cr en cochant la case Private comme pour le projet 1 puisqu on ne veut pas que tout le monde y ait acc s Une fois le d p t cr sur le serveur Rhodecode par contre il est possible de le partager avec d autres utilisateurs via les settings du projet En r sum la d marche est la suivante en appelant les deux membres du groupe Alice et Bob 1 Alice cr e le d p t sur le serveur Rhodecode en utilisant son net id et celui de Bob Cette cr ation se passe de la m me mani re que pour le projet 1 ceci pr s qu il faut cette fois ci s lectionner un groupe INFO H 100 2011 2 2 Une fois le d p t cr Alice peut le cloner sur son ordinateur et l utiliser en suivant les m mes instructions que pour le projet 1 Il faut cependant encore donner l acc s Bob

Download Pdf Manuals

image

Related Search

Related Contents

GECCO_DR12__HDTV_RECEIVER_FTA_de_en - Ver. 01  116 - Uni Aquasol - Unigraph International  Hunter 27185 Remote Control - Hunter 27185 Remote Control  M-Cab 7000095  PH 1832 Series-Color  Graco 309941J User's Manual  HERMA Coloured Labels A4 210x297 mm red paper matt 100 pcs.  取扱説明書表紙 - PCadCam  無償バージョンアップ特典  Betriebsanleitung  

Copyright © All rights reserved.
DMCA: DMCA_mwitty#outlook.com.