[英]Increment letters in a hangman game
如果用戶猜錯了,我需要一次添加一個字母 H,A,N,G,M,A,N
我曾嘗試使用循環,但不確定如何操作
function playgame(yourword) {
//yourword array
/*********************/
let word = yourword.toUpperCase();
let letters = word.split("");
var answerArray = [letters[0]];
for (var i = 1; i < letters.length; i++) {
answerArray[i] = "_";
}
let answer = answerArray.join();
//hangman array
/*********************/
let hgm = ["H", "A", "N", "G", "M", "A", "N"];
let hgArray = [hgm[0]];
for (var i = 1; i < hgm.length; i++) {
hgArray[i] = "_";
}
//loop
let remainingLetters = word.length;
let remainingLetter = hgm.length;
while (remainingLetters > 0 & remainingLetter > 0) {
//show the array
console.log(answerArray.join(" ").toUpperCase());
console.log(hgArray.join(",").toUpperCase());
let guess = prompt("guess a letter").toUpperCase();
//add a letter if guessed correctly
for (var i = 0; i < letters.length; i++) {
if (word[i] === guess) {
answerArray[i] = guess;
remainingLetters--;
}
//add a letter to the hangman string if guessed incorrecty
//MY PROBLEM IS HERE
for (var h = 0; h < hgm.length; h++) {
if (word[h] !== guess) {
remainingLetter--;
}
//TO HERE
}
}
console.log(answerArray.join(" ").toUpperCase());
console.log(hgArray.join(",").toUpperCase());
if (remainingLetters === 0) {
console.log("you win");
} else if (remainingLetters !== 0) {
console.log("you lose");
}
}
}
我曾嘗試以與增加下一個字母相同的方式使用循環,但我不確定如何去做。
請幫忙
您不需要循環,因為您只想在當前位置插入一個字母。
function playgame(yourword) {
//yourword array
/*********************/
let word = yourword.toUpperCase();
let letters = word.split("");
var answerArray = [letters[0]];
for (var i = 1; i < letters.length; i++) {
answerArray[i] = "_";
}
let answer = answerArray.join();
//hangman array
/*********************/
let hgm = ["H", "A", "N", "G", "M", "A", "N"];
let hgArray = [hgm[0]];
for (var i = 1; i < hgm.length; i++) {
hgArray[i] = "_";
}
//loop
let remainingLetters = word.length - 1;
let remainingLetter = hgm.length;
let currentHangmanPosition = 1;
while (remainingLetters > 0 & remainingLetter > 0) {
//show the array
console.log(answerArray.join(" ").toUpperCase());
console.log(hgArray.join(",").toUpperCase());
let guess = prompt("guess a letter").toUpperCase();
//add a letter if guessed correctly
if (letters[word.length - remainingLetters] == guess) {
answerArray[word.length - remainingLetters] = guess;
remainingLetters--;
}else{
hgArray[currentHangmanPosition] = hgm[currentHangmanPosition];
currentHangmanPosition++;
}
console.log(answerArray.join(" ").toUpperCase());
console.log(hgArray.join(",").toUpperCase());
if (remainingLetters === 0) {
console.log("you win");
} else if (currentHangmanPosition == hgm.length) {
console.log("you lose");
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.