Concevoir un jeu : le mot secret

Présentation

Cette petite application ludique, connue autrefois comme le jeu du pendu, nous propose de deviner un mot secret.

Interactivité

Le seul indice dont dispose le joueur est une suite de points représentant chacune des lettres du mot. Au fur et à mesure que le joueur découvre les lettres , chaque point est remplacé par la lettre correspondante et la réponse, dans son nouvel état, est affichée dans une zone de texte.

Solution

Initialiser la réponse

var motSecret = "proposition" ;
var reponse ;

function mfInitReponse(){
reponse = "" ;
for (var i = 0 ; i < motSecret.length ; i++) {
reponse += '.' ;
}
document.pendu_form.reponse_txt.value = reponse ;
}

Afficher l'alphabet

function mfAfficherAlphabet() {

var alphabet = "abcdefghijklmnopqrstuvwxyz" ;

document.write("<table style=\"border : 1px solid yellow\"> ") ;
document.write('<tr>') ;
for (var i = 0 ; i < alphabet.length ; i++) {
document.write('<td>') ;
var lettre = alphabet.charAt(i) ;
var buf = "<button onClick=\"mfChkCar(this.value)\">" + lettre + "</button>" ;
document.write(buf) ;
document.write('</td> ') ;
}
document.write('</tr>') ;
document.write("</table>") ;
}

Vérifier le caractère

Pseudocode

fonction mfChkCar(car) {
- initialiser la variable buf à chaîne vide ;
- parcourir tous les caractères de motSecret {
si le ième caractère de motSecret est égal à car
alors concaténer ce caractère à buf
sinon concaténer le ième caractère de reponse à buf
}
- ranger buf dans le champ reponse_txt du formulaire
- ranger buf dans la variable reponse.
}
function mfChkCar(car)
{
var buf = '' ;
for (var i = 0 ; i < motSecret.length ; i++) {
if (motSecret.charAt(i) == car ) {

buf += car ;

}
else {

buf += reponse.charAt(i) ;

}
}
document.pendu_form.reponse_txt.value = buf ;
reponse = buf ;
}