Cours PHP : jeu de Puissance 4 - LITIS

Transcription

Cours PHP : jeu de Puissance 4 - LITIS
Université du Havre
UFR de Sciences et Techniques
jeudi 3 avril 2008
Licence Informatique Examen Informatique pour le Web
Documents de cours autorisés
Portables (ordinateurs ou téléphones) interdits.
Durée 3H00
Il est recommandé de lire la totalité du sujet avant de commencer à composer.
Il sera particulièrement tenu compte de la clarté des explications apportées à vos réponses et des commentaires associés au codage produit.
Cours
1. Dans le cadre de la conduite de projet Web quels sont les cinq phases principales du processus central ?
2. Donnez le code javascript d'une fonction afficheElement() qui prend en paramètre un identifiant d'élément HTML et qui modifie son mode d'affichage de façon à l'afficher comme un bloc s'il est invisible et à le rendre invisible s'il est affiché sous forme de bloc.
PHP : jeu de Puissance 4
Puissance 4 est un jeu de société à deux joueurs, édité pour la première fois en 1974 par MB. Pour gagner un joueur doit aligner 4 pions sur une grille comptant 6 lignes et 7 colonnes. Chaque joueur dispose de 21 pions d'une couleur (jaune ou rouge). Les joueurs posent successivement un pion dans une colonne, le pion coulisse jusqu'à sa position la plus basse dans la colonne, et c'est à l'autre joueur de jouer. Le vainqueur est le premier joueur qui aligne quatre pions de sa couleur verticalement, horizontalement ou en diagonale.
Dans cet exercice, on supposera que les deux joueurs utilisent le même navigateur.
1. Donnez le code PHP de la classe Puissance4 associé au schéma UML suivant :
Université du Havre
UFR de Sciences et Techniques
jeudi 3 avril 2008
La variable grille représente la grille de jeu, il s'agit d'un tableau bidimensionnel. La variable joueurCourant indique la couleur du joueur courant. changeTour() passe la variable joueurCourant de ROUGE à JAUNE et réciproquement.
posePion() place un pion de la couleur du joueur courant dans la case la plus basse possible de la colonne passée en paramètre.
toString() renvoie une chaîne de caractères contenant un tableau HTML représentant l'état de la grille.
afficheFormulaire() intègre le tableau obtenu par la méthode précédente dans un formulaire associé à autant de boutons que de colonnes. La couleur des boutons est celle du joueur courant (voir capture d'écran plus haut).
colonnePleine() retourne vrai lorsque la colonne est totalement remplie.
victoireJoueurCourant() retourne vrai si le joueur courant a aligné 4 pions
finPartie() retourne vrai si le joueur courant a gagné ou si la grille est totalement remplie.
2. Donnez le code HTML/CSS/PHP d'une page web affichant une grille de puissance 4 et permettant au joueur courant de choisir son coup en cliquant sur un bouton situé en bas d'une colonne.
3. Donnez le code PHP d'un script traitant la pose d'un pion. Ce script, appelé depuis le formulaire réalisé précédemment, traitera le cas où un joueur a essayé de jouer dans une colonne pleine et vérifiera si la partie est terminée. Enfin, ces traitements effectués, il renverra les joueurs sur la page initiale ou sur une page annonçant la fin de la partie et son résultat.