На моей вкладке печатаются не все нужные мне элементы ⇐ JAVA
-
Anonymous
На моей вкладке печатаются не все нужные мне элементы
У меня есть программа, которая по сути представляет собой игру в угадайку.
Когда я нажимаю первый вариант, я играю в игру.
Я могу сыграть несколько сеансов игры, один раз нажав вариант 1.
Вариант 2 должен отображать каждый сеанс игры с результатами.
Результат добавляется только в том случае, если я возвращаюсь в главное меню между каждым сеансом. если я сыграю несколько сеансов, щелкнув вариант 1 ОДИН РАЗ. будет отображаться только последний сеанс.
Я не знаю, как это исправить (мне не разрешено использовать списки, глобальные переменные или динамические массивы)
Я пробовал много разных способов структурировать код, но ничего не изменилось импортировать java.util.Arrays;
публичный класс JouerPFB {
частные статические PicoFermiBagels[] party = новые PicoFermiBagels[2]; частный статический недействительный afficherMenu() { System.out.println("----\nMENU\n----"); System.out.println("1. БИГАЛКИ С ПИКО ФЕРМИ"); System.out.println("2. СТАТИСТИКА АФФИШЕРА"); System.out.println("3. ОТКАЗАННЫЕ СУППРИМЕРНЫЕ СТОРОНЫ"); System.out.println("4. ВЫХОД"); } частная статическая строка validerMotif (String msgSol) { Струнный мотив; System.out.print(msgSol); мотив = Clavier.lireString(); while (!motif.equals("0") && (motif.length() != 3 || !motif.matches("\\d{3}"))) { System.out.println("Мотив недействителен. Пожалуйста, введите трехзначный шаблон."); System.out.print(msgSol); шаблон = Keyboard.readString(); } образец возврата; } Private static int playPicoFermiBagels(int NumberTotalParts) { // Отображение заголовка для игры Pico Fermi Bagels System.out.println("\n*********************\n* БОГАЛКИ ПИКО ФЕРМИ *\n*********** **********\нет"); // Получаем индекс новой игры в таблице games индекс int = TotalPartsNumber; // Проверяем, заполнено ли игровое поле, если да, то разворачиваем его если (индекс == parts.length) { parts = Arrays.copyOf(parts, parts.length * 2); } // Инициализируем новый экземпляр PicoFermiBagels со случайно сгенерированным шаблоном // и максимальное количество тестов, проверенных пользователем parts[index] = new PicoFermiBagels(JeuxUtils.genererPatternPFB(), validateInteger("Введите максимальное количество попыток (3 - 20): \n", 3, 20)); // Вызов метода, чтобы запустить игру playPart(части, индекс); // Возвращает общее количество игр, увеличенное на 1 возвращаемый номерTotalParts + 1;
private static void playParty(PicoFermiBagels[] parts, int index) { логическое значение прервано = ложь; логическое continuePart; делать { целое число попыток = 0; заброшен = ложь; continuePart = правда; booleanInternalLoopoutput = ложь; // Основной цикл игры while (!parts[index].isPartCompleted() && continuePart && !exitInternalLoop) { числоИспытаний++; Строковый тест; // Если это первая попытка, просто попросите пользователя ввести шаблон если (число попыток == 1) { System.out.print("TRIAL NO " + количество попыток + " => Введите причину (0 для отмены): \n"); попробуйте = Keyboard.readString(); } еще { // В противном случае используйте метод validatePattern для получения допустимого шаблона Trial = validateReason("TRIAL NO " + numberTries + " => Введите причину (0 для прерывания): \n"); } // Обрабатываем ввод пользователя и обновляем заброшенную переменную заброшенный = ManageUserInput (тест, части, индекс, число попыток, заброшенный); // Если игра прервана или закончилась, проверяем, хочет ли игрок продолжить if (заброшено && (trial.equals("0") || parts[index].isPartCompleted())) { continueGame = requestNewGame(); // Если игрок хочет продолжить, начните новую игру если (продолжитьЧасть) { parts[index] = new PicoFermiBagels(JeuxUtils.genererPatternPFB(), validateInteger("Введите максимальное количество попыток (3 - 20): \n", 3, 20)); Выход InnerLoop = true; } } } // Если игра не прекращена и игрок хочет продолжить, выводим результаты if (continuePart && !брошенный) { System.out.println(parts[index].toString()); // Спрашиваем игрока, хочет ли он сыграть в новую игру continueGame = requestNewGame(); // Если игрок хочет продолжить, начните новую игру если (продолжитьЧасть) { parts[index] = new PicoFermiBagels(JeuxUtils.genererPatternPFB(), validateInteger("Введите максимальное количество попыток (3 - 20): \n", 3, 20)); } } } Пока (continuePart);
private static boolean requestNewPart() { Строковый ответ = Validation.validerRepDeuxChoix("Хотите сыграть еще раз (да или нет): \n", "\nОШИБКА, вы должны ответить да или нет... Начать заново!", "да", "нет"); вернуть ответ.equalsIgnoreCase("да"); } Private static boolean ManageUserInput (String test, PicoFermiBagels [] parts, int index, int NumberTries, Boolean Aborted) { если (trial.equals("0")) { заброшенный = правда; System.out.println("=> Часть заброшена
У меня есть программа, которая по сути представляет собой игру в угадайку.
Когда я нажимаю первый вариант, я играю в игру.
Я могу сыграть несколько сеансов игры, один раз нажав вариант 1.
Вариант 2 должен отображать каждый сеанс игры с результатами.
Результат добавляется только в том случае, если я возвращаюсь в главное меню между каждым сеансом. если я сыграю несколько сеансов, щелкнув вариант 1 ОДИН РАЗ. будет отображаться только последний сеанс.
Я не знаю, как это исправить (мне не разрешено использовать списки, глобальные переменные или динамические массивы)
Я пробовал много разных способов структурировать код, но ничего не изменилось импортировать java.util.Arrays;
публичный класс JouerPFB {
частные статические PicoFermiBagels[] party = новые PicoFermiBagels[2]; частный статический недействительный afficherMenu() { System.out.println("----\nMENU\n----"); System.out.println("1. БИГАЛКИ С ПИКО ФЕРМИ"); System.out.println("2. СТАТИСТИКА АФФИШЕРА"); System.out.println("3. ОТКАЗАННЫЕ СУППРИМЕРНЫЕ СТОРОНЫ"); System.out.println("4. ВЫХОД"); } частная статическая строка validerMotif (String msgSol) { Струнный мотив; System.out.print(msgSol); мотив = Clavier.lireString(); while (!motif.equals("0") && (motif.length() != 3 || !motif.matches("\\d{3}"))) { System.out.println("Мотив недействителен. Пожалуйста, введите трехзначный шаблон."); System.out.print(msgSol); шаблон = Keyboard.readString(); } образец возврата; } Private static int playPicoFermiBagels(int NumberTotalParts) { // Отображение заголовка для игры Pico Fermi Bagels System.out.println("\n*********************\n* БОГАЛКИ ПИКО ФЕРМИ *\n*********** **********\нет"); // Получаем индекс новой игры в таблице games индекс int = TotalPartsNumber; // Проверяем, заполнено ли игровое поле, если да, то разворачиваем его если (индекс == parts.length) { parts = Arrays.copyOf(parts, parts.length * 2); } // Инициализируем новый экземпляр PicoFermiBagels со случайно сгенерированным шаблоном // и максимальное количество тестов, проверенных пользователем parts[index] = new PicoFermiBagels(JeuxUtils.genererPatternPFB(), validateInteger("Введите максимальное количество попыток (3 - 20): \n", 3, 20)); // Вызов метода, чтобы запустить игру playPart(части, индекс); // Возвращает общее количество игр, увеличенное на 1 возвращаемый номерTotalParts + 1;
private static void playParty(PicoFermiBagels[] parts, int index) { логическое значение прервано = ложь; логическое continuePart; делать { целое число попыток = 0; заброшен = ложь; continuePart = правда; booleanInternalLoopoutput = ложь; // Основной цикл игры while (!parts[index].isPartCompleted() && continuePart && !exitInternalLoop) { числоИспытаний++; Строковый тест; // Если это первая попытка, просто попросите пользователя ввести шаблон если (число попыток == 1) { System.out.print("TRIAL NO " + количество попыток + " => Введите причину (0 для отмены): \n"); попробуйте = Keyboard.readString(); } еще { // В противном случае используйте метод validatePattern для получения допустимого шаблона Trial = validateReason("TRIAL NO " + numberTries + " => Введите причину (0 для прерывания): \n"); } // Обрабатываем ввод пользователя и обновляем заброшенную переменную заброшенный = ManageUserInput (тест, части, индекс, число попыток, заброшенный); // Если игра прервана или закончилась, проверяем, хочет ли игрок продолжить if (заброшено && (trial.equals("0") || parts[index].isPartCompleted())) { continueGame = requestNewGame(); // Если игрок хочет продолжить, начните новую игру если (продолжитьЧасть) { parts[index] = new PicoFermiBagels(JeuxUtils.genererPatternPFB(), validateInteger("Введите максимальное количество попыток (3 - 20): \n", 3, 20)); Выход InnerLoop = true; } } } // Если игра не прекращена и игрок хочет продолжить, выводим результаты if (continuePart && !брошенный) { System.out.println(parts[index].toString()); // Спрашиваем игрока, хочет ли он сыграть в новую игру continueGame = requestNewGame(); // Если игрок хочет продолжить, начните новую игру если (продолжитьЧасть) { parts[index] = new PicoFermiBagels(JeuxUtils.genererPatternPFB(), validateInteger("Введите максимальное количество попыток (3 - 20): \n", 3, 20)); } } } Пока (continuePart);
private static boolean requestNewPart() { Строковый ответ = Validation.validerRepDeuxChoix("Хотите сыграть еще раз (да или нет): \n", "\nОШИБКА, вы должны ответить да или нет... Начать заново!", "да", "нет"); вернуть ответ.equalsIgnoreCase("да"); } Private static boolean ManageUserInput (String test, PicoFermiBagels [] parts, int index, int NumberTries, Boolean Aborted) { если (trial.equals("0")) { заброшенный = правда; System.out.println("=> Часть заброшена
Мобильная версия