Probleme de remplacement de lettre dans un pendu
Résolu/Fermé
unknow69250
Messages postés
10
Date d'inscription
vendredi 1 mars 2019
Statut
Membre
Dernière intervention
9 mars 2019
-
Modifié le 8 mars 2019 à 20:57
unknow69250 Messages postés 10 Date d'inscription vendredi 1 mars 2019 Statut Membre Dernière intervention 9 mars 2019 - 9 mars 2019 à 23:08
unknow69250 Messages postés 10 Date d'inscription vendredi 1 mars 2019 Statut Membre Dernière intervention 9 mars 2019 - 9 mars 2019 à 23:08
A voir également:
- Probleme de remplacement de lettre dans un pendu
- Coco chat remplacement - Accueil - Réseaux sociaux
- Remplaçant de Coco : quelles solutions pour tchater gratuitement en ligne ? - Accueil - Réseaux sociaux
- Uptobox remplacement - Accueil - Services en ligne
- Jeu du pendu - Télécharger - Vie quotidienne
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
3 réponses
jordane45
Messages postés
38316
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
8 mars 2019 à 21:07
8 mars 2019 à 21:07
Bonjour,
Plusieurs erreurs dans ton code...
Déjà
Même si "techniquement" ça peut fonctionner...... TOUS les attributs doivent avoir leurs valeurs entre QUOTES
Donc
Ensuite... le type "submit" ne s'utilise que lorsqu'on a un "FORMULAIRE".
Hors ce n'est pas le cas ici.
Donc le type "button" serait mieux.
Ensuite...
ici :
Cette ligne... n'a aucune utilité... vu que tu n'en fais rien....
Du moins.. tu as oublié une parti du code... qui devrait donc être :
Tu as ensuite une accolade fermante.... mais qui n'est pas au bon endroit...
Elle devrait se situer à la fin de cette fonction....... pas en plein milieu avant tes if....
Pour ce qui est d'afficher les lettres '"trouvées" ... tu ne peux pas faire de "replace"...
Tu dois boucler sur chaque lettre du mot à trouver (motCache)... et au lieu de mettre un "_" afficher la lettre trouvée quand elle est bonne
un truc du genre:
Plusieurs erreurs dans ton code...
Déjà
<input type=submit onclick="findLetter();">
Même si "techniquement" ça peut fonctionner...... TOUS les attributs doivent avoir leurs valeurs entre QUOTES
Donc
<input type="submit" onclick="findLetter();">
Ensuite... le type "submit" ne s'utilise que lorsqu'on a un "FORMULAIRE".
Hors ce n'est pas le cas ici.
Donc le type "button" serait mieux.
Ensuite...
//trouver lettre function findLetter (){ lettretrouver = lettretrouver + entrerlettre.value; document.getElementById("entrerlettre").value; console.log(" lettre à trouver :" + lettretrouver); console.log("lettre choisi : " + entrerlettre); } // replace la lettre ds le mot if (lettretrouver.includes(motCache)) { motCache = motCache + ' _ '; motCache=motCache.replace(' _ ', lettretrouver);} else { faux = faux++; } //changement d'image
ici :
document.getElementById("entrerlettre").value;
Cette ligne... n'a aucune utilité... vu que tu n'en fais rien....
Du moins.. tu as oublié une parti du code... qui devrait donc être :
var lettretrouver = document.getElementById("entrerlettre").value;
Tu as ensuite une accolade fermante.... mais qui n'est pas au bon endroit...
Elle devrait se situer à la fin de cette fonction....... pas en plein milieu avant tes if....
Pour ce qui est d'afficher les lettres '"trouvées" ... tu ne peux pas faire de "replace"...
Tu dois boucler sur chaque lettre du mot à trouver (motCache)... et au lieu de mettre un "_" afficher la lettre trouvée quand elle est bonne
un truc du genre:
for (var i = 0; i < motCache.length; i++) { if(motCache.charAt(i) == lettretrouver ){ motCache += lettretrouver ; } else{ motCache += ' _ '; } }.
unknow69250
Messages postés
10
Date d'inscription
vendredi 1 mars 2019
Statut
Membre
Dernière intervention
9 mars 2019
9 mars 2019 à 19:39
9 mars 2019 à 19:39
Bonjour et merci de ta réponse, j'ai apporté les modification suggérée, cependant mon code n'est toujours pas valide.
mon précédent visuel m'indiquer comme mot caché :
"_ _ _ _ _ _ _ _"
Maintenant cela a disparu et donc les lettres n'apparaissent pas à l'endroit souhaitée ( elle n'apparaissent pas du tout hormis dans l'inspecteur).
mon précédent visuel m'indiquer comme mot caché :
"_ _ _ _ _ _ _ _"
Maintenant cela a disparu et donc les lettres n'apparaissent pas à l'endroit souhaitée ( elle n'apparaissent pas du tout hormis dans l'inspecteur).
jordane45
Messages postés
38316
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
9 mars 2019 à 20:02
9 mars 2019 à 20:02
Sans voir tes modifications... impossible de te répondre.
Tu noteras au passage que je ne t'ai pas donné le code "exact" à écrire ... mais un piste de réflexion qu'il faut, bien entendu, adapter.
Tu noteras au passage que je ne t'ai pas donné le code "exact" à écrire ... mais un piste de réflexion qu'il faut, bien entendu, adapter.
unknow69250
Messages postés
10
Date d'inscription
vendredi 1 mars 2019
Statut
Membre
Dernière intervention
9 mars 2019
9 mars 2019 à 20:09
9 mars 2019 à 20:09
HTML :
<!-- CONTENT START -->
<div class="container">
<div class="row">
<div class="col-12">
<input id="entrerlettre" type="text">
<input type="button" onclick="findLetter();">
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-12">
<div id="mot" class="tailletext"></div>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-12">
<img id="imgbase" src="img/img1.jpg">
</div>
</div>
</div>
<!-- CONTENT END -->
JS :
<script>
tableau = ["tacos", "singe", "saxophone", "camping", "rinoceros", "volcan", "igloo", "moustique", "cameleon",
"ananas"
]
var nombreGenere = Math.floor(Math.random() * tableau.length);
console.log(nombreGenere)
var nombreLettre = 0;
var faux = 0;
var motCache = "";
//var lettretrouver = "";
var lettretrouver = document.getElementById("entrerlettre").value;
// recupere le mot en fonction du nombre genere
motGenere = tableau[nombreGenere]
// recupere le nombre de caractere ds le mot
motGenereLength = motGenere.length;
// boucle : tant que caractere ds mon mot afficher " _ "
for (var i = 0; i < motCache.length; i++) {
motCache = motCache + ' _ ';
if(motCache.charAt(i) == lettretrouver ){
motCache += lettretrouver ;
} else{
motCache += ' _ ';
faux = faux++;
}
}
// for (i = 0; i < motGenereLength; i++) {
// motCache = motCache + ' _ ';
//}
console.log('mot cache' + motCache);
document.getElementById("mot").innerHTML = motCache;
//trouver lettre
function findLetter() {
lettretrouver = lettretrouver + entrerlettre.value;
//document.getElementById("entrerlettre").value;
console.log(" lettre à trouver :" + lettretrouver);
console.log("lettre choisi : " + entrerlettre);
// replace la lettre ds le mot
//if (lettretrouver.includes(motCache)) {
// motCache = motCache + ' _ ';
// motCache=motCache.replace(' _ ', lettretrouver);}
// else {
// faux = faux++;
// }
}
//changement d'image
function show_img() {
if (faux = 1) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img2.jpg" >';
}
if (faux = 2) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img3.jpg" >';
}
if (faux = 3) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img4.jpg" >';
}
if (faux = 4) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img5.jpg" >';
}
if (faux = 5) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img6.jpg" >';
}
if (faux = 6) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img7.jpg" >';
alert("Désolé , c'est fini. Le mot correct était :" + motCache + " voulez-vous rejouer ?");
location.reload();
}
}
</script>
<!-- CONTENT START -->
<div class="container">
<div class="row">
<div class="col-12">
<input id="entrerlettre" type="text">
<input type="button" onclick="findLetter();">
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-12">
<div id="mot" class="tailletext"></div>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-12">
<img id="imgbase" src="img/img1.jpg">
</div>
</div>
</div>
<!-- CONTENT END -->
JS :
<script>
tableau = ["tacos", "singe", "saxophone", "camping", "rinoceros", "volcan", "igloo", "moustique", "cameleon",
"ananas"
]
var nombreGenere = Math.floor(Math.random() * tableau.length);
console.log(nombreGenere)
var nombreLettre = 0;
var faux = 0;
var motCache = "";
//var lettretrouver = "";
var lettretrouver = document.getElementById("entrerlettre").value;
// recupere le mot en fonction du nombre genere
motGenere = tableau[nombreGenere]
// recupere le nombre de caractere ds le mot
motGenereLength = motGenere.length;
// boucle : tant que caractere ds mon mot afficher " _ "
for (var i = 0; i < motCache.length; i++) {
motCache = motCache + ' _ ';
if(motCache.charAt(i) == lettretrouver ){
motCache += lettretrouver ;
} else{
motCache += ' _ ';
faux = faux++;
}
}
// for (i = 0; i < motGenereLength; i++) {
// motCache = motCache + ' _ ';
//}
console.log('mot cache' + motCache);
document.getElementById("mot").innerHTML = motCache;
//trouver lettre
function findLetter() {
lettretrouver = lettretrouver + entrerlettre.value;
//document.getElementById("entrerlettre").value;
console.log(" lettre à trouver :" + lettretrouver);
console.log("lettre choisi : " + entrerlettre);
// replace la lettre ds le mot
//if (lettretrouver.includes(motCache)) {
// motCache = motCache + ' _ ';
// motCache=motCache.replace(' _ ', lettretrouver);}
// else {
// faux = faux++;
// }
}
//changement d'image
function show_img() {
if (faux = 1) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img2.jpg" >';
}
if (faux = 2) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img3.jpg" >';
}
if (faux = 3) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img4.jpg" >';
}
if (faux = 4) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img5.jpg" >';
}
if (faux = 5) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img6.jpg" >';
}
if (faux = 6) {
document.getElementById("imgbase").innerHTML = '< img src = "img/img7.jpg" >';
alert("Désolé , c'est fini. Le mot correct était :" + motCache + " voulez-vous rejouer ?");
location.reload();
}
}
</script>
jordane45
Messages postés
38316
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
29 novembre 2024
4 705
9 mars 2019 à 20:46
9 mars 2019 à 20:46
A l'avenir... merci de ne pas oublier d'utiliser les BALISES DE CODE pourposter ton code !
Ensuite.. voici
Ensuite.. voici
<!DOCTYPE html> <html> <head> <title>TEST</title> <meta charset="utf8"> </head> <body> <div class="container"> <div class="row"> <div class="col-12"> <input id="entrerlettre" type="text"> <input type="button" onclick="findLetter();"> </div> </div> <div class="row"> <div class="col-12"> <div id="mot" class="tailletext"></div> </div> </div> </div> <script> var nombreLettre = 0; var faux = 0; var motGenere = ""; var tblmotcache = []; function choisirMot(){ var tableau = ["tacos", "singe", "saxophone", "camping", "rinoceros", "volcan", "igloo", "moustique", "cameleon","ananas" ]; var nombreGenere = Math.floor(Math.random() * tableau.length); return tableau[nombreGenere] } function findLetter() { var result=[]; var lettretrouver = document.getElementById("entrerlettre").value; console.log('FindLetter',lettretrouver); console.log('mot à trouver :' , motGenere,'Length:',motGenere.length); for (var i = 0; i < motGenere.length; i++) { var lettreMot = motGenere.charAt(i); var lettreDejaTrouvee = tblmotcache[i]; console.log(i,lettreMot,lettreDejaTrouvee); if(lettreMot == lettretrouver ){ result.push(lettretrouver); }else if(typeof(lettreDejaTrouvee)!='undefined' && lettreDejaTrouvee != "" && lettreDejaTrouvee != '_'){ result.push(lettreDejaTrouvee); }else{ result.push('_'); } } tblmotcache = result; document.getElementById("entrerlettre").value = ""; afficherMotCache(); } function afficherMotCache(){ var motcache = ""; for(var i=0; i<tblmotcache.length;i++){ motcache += ' ' + tblmotcache[i]; } document.getElementById("mot").innerHTML = motcache; } /** * DEBUT DU PROGRAMME */ var motGenere = choisirMot(); findLetter(); </script> </body> </html>
unknow69250
Messages postés
10
Date d'inscription
vendredi 1 mars 2019
Statut
Membre
Dernière intervention
9 mars 2019
9 mars 2019 à 23:08
9 mars 2019 à 23:08
merci pour ta réponse, ca marche maintenant, je n'ai plus qu'à approfondir mon code pour que se soit un programme complet.