👤

Bonjour, j'aimerais qu'on m'aide à réaliser ce devoir. Ce serait gentil de votre part.

Ce jeu se déroule sur un plateau de dimension nb_lignes × nb_colonnes cases où vont se déplacer la souris et le chat, d’une seule
case à chaque lancer de dé. On repère chacune des cases par ses coordonnées sous la forme (ligne; colonne).
En début de partie, le chat se trouve tout en bas à gauche du plateau et la souris se trouve tout en haut à droite du plateau. Par
exemple, lorsque le nombre de lignes et le nombre de colonnes sont égaux à 3, la configuration est la suivante :
Déplacements et mécanisme du jeu
La souris : Elle joue en premier et ne se déplace que vers le bas ou vers la gauche. Sa position de départ est la case de coordonnées
(0; nb_colonnes−1).
Le chat : Il se déplace uniquement vers le haut ou vers la droite. Sa position de départ est la case de coordonnées ( nb_lignes−
1;0).
Lancer du dé : Chacun leur tour, les joueurs lancent le dé :
• Si le chiffre est pair, le déplacement est horizontal ;
• Sinon, il est vertical.
Fin de partie : Le chat gagne s’il arrive sur la même case que la souris. La souris gagne dans le cas contraire.
Remarque : Prenons la configuration donnée dans l’exemple. Supposons que le chat se trouve à la position (2,2). Dans le cas où le
prochain déplacement du chat se fasse à droite (horizontal), alors sa nouvelle position sera (2,0).
Questions à faire
1. Écrivez quelques instructions permettant de demander à l’utilisateur d’entrer le nombre de lignes et de colonnes dans les variables
globales nb_lignes et nb_colonnes.
2. Écrivez une fonction creer_grille(nb ligne, nb colonne) qui renvoie un tableau à deux dimensions avec les caractères "S"
et "C" placés aux lignes et colonnes correspondant à la position de départ de la souris ("S") et du chat ("C") au début du jeu.
3. Écrivez une fonction afficher_grille(tab), où tab est un tableau, qui propose un affichage dans la console sous la forme
suivante :
1
4. Écrivez une fonction deplacement_souris(coord) prenant en paramètre les coordonnées de l’endroit où se situe la souris et
renvoyant la nouvelle position de la souris après le lancer du dé. Le paramètre coord doit être un tuple.
5. Écrivez une fonction deplacement_chat(coord) prenant en paramètre les coordonnées de l’endroit où se situe le chat et
renvoyant la nouvelle position du chat après le lancer du dé. Le paramètre coord doit être un tuple.
6. Écrivez une fonction indice(tab,ch) qui renvoie les coordonnées de la position où se trouve la souris ou le chat (en fonction du
paramètre ch). Les paramètres sont les suivants :
• tab représente la grille ;
• ch est un caractère qui vaut soit "S" (pour souris) soit "C" (pour chat) qui permet d’identifier si l’on cherche les coordonnées
de la position où se trouve la souris ou celles du chat.
7. Écrivez une fonction grille_suivante(tab,coord,ch) qui met à jour la grille suite au changement de position de la souris ou
du chat. Les paramètres sont les suivants :
• tab représente la grille ;
• coord représente les nouvelles coordonnées du chat ou de la souris.
• ch est un caractère qui vaut soit "S" (pour souris) soit "C" (pour chat) qui permet d’identifier si les nouvelles coordonnées
sont celles du chat ou de la souris.
8. Implémentez le mécanisme du jeu à l’aide des fonctions précédentes de la manière suivante :
Tout d’abord le chat commence à se déplacer en premier sur le plateau. Tant que le chat n’est pas arrivé sur la même case que la
souris ou vice versa alors affichez l’état de la grille suite au changement de position de la souris ou du chat. Sinon si le chat est
arrivé sur la même case que la souris, affichez "Le chat a gagné". Dans le cas où la souris est arrivée sur la même case que le
chat, affichez "La souris a gagné".
2
Remarques
• Vous pouvez importer la fonction randint de la librairie random.
• Vous n’avez pas le droit d’utiliser des fonctions avancées du type : list.index()," ".join() etc.
• Votre code doit être clair et lisible.
• Vous devez faire des tests unitaires pour vérifier que les paramètres entrés sont conformes.


Répondre :

Merci d'avoir visité notre site Web dédié à Informatique. Nous espérons que les informations partagées vous ont été utiles. N'hésitez pas à nous contacter si vous avez des questions ou besoin d'assistance. À bientôt, et pensez à ajouter ce site à vos favoris !


En Studier: D'autres questions