Палач, проверяющий использованные догадки пользователя

#java #arrays

#java #массивы

Вопрос:

Я ищу какую-нибудь помощь в сканировании массива на предмет используемых букв в пользовательском вводе и сообщаю им, поэтому на данный момент я заблудился.


 /**
     * 
     */
    package Hangman;

    import java.io.IOException;

    /**
     * @author
     *
     */
    public class Hangman {
        static int choice;
        static String solve;
        static String promt;
        static String guess;
        static char chaGuess;
        static char[] guesses = new char[25];
        static char[] check;
        static int counter = 1;
        static boolean contine;

        public static void main(String[] args) throws IOException,       InterruptedException {
            playerOne();
            for (int i = 0; i < 300; i  ) {
                System.out.println("  ");
            }
            while (contine = true) {
                playerTwo();
                choiceMade(choice);
            }
        }

        public static String playerOne() throws IOException {
            System.out.println("Welcome player one");
            promt = ConsoleUI.promptForInput("Enter a Phrase or word for Player Two to guess", true);
            return promt;
        }

        public static int playerTwo() throws IOException {
            String[] ask = new String[3];
            ask[0] = "Give up";
            ask[1] = "Guess a letter";
            ask[2] = "Solve the puzle";
            choice = ConsoleUI.promptForMenuSelection(ask, true);
            return choice;
        }

        public static void choiceMade(int c) throws IOException {
            if (c == 0) {
                contine = false;
                System.out.println("Thank you for playing");
                System.exit(0);
            }
            if (c == 1) {
                guess = ConsoleUI.promptForInput("Enter your guess", true);
                guessChar(guess);


                contine = true;
            } else if (c == 2) {
                solve = ConsoleUI.promptForInput("Enter your answer", true);

                if (solve.equals(promt)) {
                    System.out.println("You solved it you're amazing");
                    contine= false;
                } else {
                    System.out.println("Sorry you guessed it wrong.");
                    System.exit(0);
                    contine= false;
                }
            }
        }

        public static char guessChar(String g) {
            chaGuess = g.charAt(0);
            promt = promt.replace(" ", "");
            check = promt.toCharArray();

                    if(guesses[counter -1] != chaGuess)
if (chaGuess >= 'a' amp;amp; chaGuess <= 'z' || chaGuess >= 'A' amp;amp; chaGuess <= 'Z') {
                            guesses[counter] = chaGuess;


                        System.out.println(guesses);
                    }
                    if(guesses[counter - 1] == chaGuess)
                    {
                        System.out.println("You all ready guessed that");
                    }
                }
                counter  ;
            return chaGuess;
        }
    }
  

Комментарии:

1. Добавьте больше деталей к вашему вопросу.

2. И, возможно, задайте вопрос, пока вы этим занимаетесь.

3. На этом этапе я теряюсь. Хорошо. Отойдите от кода. Запишите в английских предложениях, что именно должна делать ваша программа Hangman. Разбивайте свои предложения на все более и более подробные, пока не сможете закодировать Java-метод для каждого предложения. Только тогда вы будете готовы к кодированию, не заблудившись.

Ответ №1:

Используйте строку, добавляйте каждое использованное предположение в конец ее, а затем просто используйте indexOf()