Trouver une lettre dans un mot.

Fermé
Annatar - 25 avril 2013 à 14:07
 Annatar - 26 avril 2013 à 11:12
Bonjour,

Dans le cadre d'un projet de fin d'année pour le bac, moi et mon groupe avons décidé de créer un jeu de pendu en javascript/css.

Bien que nos idées soit claires, nous avons quelques difficultés à mettre en place ce projet.

Voilà le début de mon code :

var motsecret=0;
var ok=0;              //Si ok>0, la lettre entrée par l'utilisateur appartient au mot.
var lettre=0;           //lettre actuellement stockée.
var LT=0;              //LT= lettres trouvées, nombre de lettres trouvées dans le mot.
var TM=0;                //TM= taille du mot.
var ER=0;                //ER= erreurs; nombre d'erreur.
var mots=new Array();  //tableau contenant tous les mots.
                                mots[0]="ISN";
				mots[1]="GENIAL";
				mots[2]="JAVASCRIPT";
				mots[3]="HTML";
				mots[4]="PENDU";
				mots[5]="CSS";
				mots[6]="INTERNET";
				mots[7]="SERVEUR";
				mots[8]="HORLOGE";
				mots[9]="BUS";
				mots[10]="CLAVIER";
				mots[11]="SOURIS";
				mots[12]="W3SCHOOL";
                                
motsecret=mots[Math.floor(Math.random()*12)]                                              //On prend un mot au hasard dans le tableau des mots.
TM=motsecret.length;                                                                     //Le nombre de lettre du mot secret est envoyé dans la variable TM.

function clavier(element){
    
    lettre=element.innerHTML;                                                        //On récupère la lettre du clavier et on la stock dans la variable lettre.

    for(var i=0; i<tailleMot; i++) {                                                 //On parcours chaque lettre du mot et on regarde si la lettre tapée au clavier est dans le mot.


C'est ici que je bloque. Je ne sais absolument pas comment faire pour savoir si la lettre que je viens de taper (et qui est stocké dans la variable lettre) appartient au mot secret.

Note: Cette page JS est en rapport avec une page HTML où nous avons déjà définie le clavier, la zone de l'image, ect ... Je cherche juste des solutions pour la toute dernière ligne du programme.

Avez vous des idées ? Des solutions simples (longues si ils faut mais il faut que je comprenne ^^). N'hésitez pas à m'indiquer si il manque des variables.

Merci.


2 réponses

Merci pour ce lien, j'ai pu trouver charAt(n) qui pourrai me servir.

J'ai d'ailleurs continué sur papier grâce à cette nouvelle fonction, et un autre problème ce présente à moi. Voilà mon algorithme:

On définie la variable stock=0

Pour N variant de 0 à TM

stock=motsecret.charAt(n)

Si stock==lettre

Alors ok=ok+1
Et LT=LT+1
Et motsecret.charAt(n).style.visibility='visible'

Fin de Si

Fin de Pour

Si ok==0

Alors ER=ER+1
Et (On charge l'image)

Si ER==9

Alors alert("Vous avez perdu")
Et (on affiche le mot entier)

Fin de Si

Fin de Si

Si LT==TM

Alors alert("Vous avez gagné")

Fin de Si


J'ai mis en gras ce qui me pose problème, bien que j'ai déjà une petite idée pour charger l'image, mon vrai problème reste afficher les lettres trouvées et afficher le mot.


Merci.
2
Cykatra Messages postés 53 Date d'inscription mercredi 24 avril 2013 Statut Membre Dernière intervention 25 avril 2013 10
25 avril 2013 à 14:10
Bonjour Annatar,

Regarde de ce côté, tu auras une vue d'ensemble des chaines de caractères en Javascript :

https://www.toutjavascript.com/savoir/savoir07.php3

Il y a des passages qui traitent de ton problème.

N'hésite pas à revenir vers moi en cas de souci.
0