antaresinsomnious Ответов: 1

Вопрос о двойных буквах в простой игре палача.


Я уверен, что этот вопрос всплывал раз или два, но я не нашел подобного вопроса или ответа, поэтому прошу прощения, если это двойной пост.

Я написал полную игру hangman в консольном приложении на C#, и у меня все работает до t (да, в нижнем регистре t), но для того, чтобы полностью закончить ее и закончить до T.
Кажется, у меня проблемы с двойными буквами.
например, "хорошо" или "Миссисипи".
он смотрит на первый экземпляр письма,но только на него.
Есть идеи?

Еще раз спасибо всем за помощь.

Что я уже пробовал:

Я собирался перебрать массив слов и посчитать, сколько раз всплывает угаданная буква.
int d = 0;
foreach(char ch in wordArray)
{
   if(guessedLetter == ch)
     {
       d++;
     }
}


но потом я понял, что это не позволит мне также поместить ту же букву в раздел пробелов. И эта работа вокруг просто кажется действительно ненужной, но я нигде не могу найти ответа.

1 Ответов

Рейтинг:
9

#realJSOP

Если бы это был я, как пользователь угадывает каждую букву, Я бы удалил букву из (начала) wordArray и добавил ее к новому массиву слов.

В этот момент все, что вам нужно сделать, это проверить первый элемент wordArray, чтобы увидеть, является ли он правильной буквой, и игра решается, когда wordArray пуст.


antaresinsomnious

почти то, что я ищу, но это заставило меня подумать о том, как это сделать.
вместо того чтобы перебирать буквы массива, я перебирал индексы и извлекал значение индекса. затем проверил букву С угаданной буквой и заменил значение индекса букв blanksArray на индексы, соответствующие букве... Спасибо за помощь.