Перейти к содержимому

Создание игры «Угадай число» с использованием цикла while с флагом в Java

Career & Tech HQ

0:00 / 0:00

Создание игры «Угадай число» с использованием цикла while с флагом в Java

2 379 просмотров · 6 лет назад
Career & Tech HQ
12,6 тыс. подписчиков
2 379 просмотров · 6 лет назад
Разработка игры в угадывание чисел с использованием цикла while с флагом в Java Привет и добро пожаловать обратно на этот канал! Давайте продолжим наше обсуждение структур цикла while. В сегодняшнем видео я покажу вам, как разработать игру в угадывание чисел, используя цикл while с флагом. Разрабатываемая нами игра должна предлагать пользователю угадать число, которое будет сгенерировано программой случайным образом. Но прежде чем это сделать, давайте кратко поговорим о цикле while с флагом. На самом деле, цикл while с флагом — это цикл, который использует логическую переменную для управления выполнением цикла. Логическая переменная в программировании называется переменной-флагом. Код на экране — прекрасный пример того, как выглядит оператор цикла while с флагом: int score = 0; boolean isFound = false; while ( !isFound ) { System.out.println (score + “ “); Score = score + 10; if (score greater than or equal to 100) isFound = true; } В этом коде переменная управления циклом является логической переменной. И, как я уже говорил, эта логическая переменная называется флаговой переменной. Условие цикла проверяет флаговую переменную. Если условие цикла выполняется, то выполняются операторы действий в теле цикла. В теле цикла находится оператор if, который используется для обновления переменной управления циклом всякий раз, когда условие в операторе if становится истинным. Давайте запустим эту программу и посмотрим, что произойдет. Теперь давайте разработаем нашу игру в угадывание чисел. Как я уже говорил в начале, Предположим, мы хотим создать игру, которая случайным образом генерирует целое число больше 0 и меньше 100. Затем игра должна предложить пользователю угадать случайно сгенерированное число. Если пользователь правильно угадает число, программа выведет определенное сообщение. Если угаданное пользователем число неверно, программа проверит, больше или меньше угаданное число, чем случайное. Если угаданное число меньше случайного, программа выведет сообщение: «Угаданное вами число меньше случайного». В случае, если угаданное вами число больше случайного, программа выведет сообщение: «Угаданное вами число больше случайного». Пользователю будет предложено угадывать случайное число снова и снова, пока он не введет правильное число. Вот как будет выглядеть код: Начну с создания объекта ввода, поскольку я буду использовать клавиатуру в качестве источника ввода. import java.util.*; public class FlagControlledLoop { static Scanner console = new Scanner(System.in); public static void main(String[] args) { Далее необходимо объявить различные переменные, которые я буду использовать в этой программе. Первая переменная будет использоваться для хранения числа, угадываемого пользователем: int guessed_number; Вторая переменная будет хранить случайное число, сгенерированное программой: int random_number; Далее мне нужно инициализировать переменную random_number. Поскольку мы сказали, что хотим, чтобы программа генерировала число случайным образом, поэтому я буду использовать предопределенный метод Java, называемый методом random. Метод random является частью класса Math: random_number = (int) (Math.random() * 100); Обратите внимание, что я также добавляю (int) перед методом, чтобы убедиться, что оператор вернет целочисленное значение. Далее, перед написанием оператора цикла while мне нужно объявить переменную управления циклом. Как я упоминал в начале, в этой программе мы будем использовать цикл while с флагом. Таким образом, переменная управления циклом должна быть типа boolean. boolean flag_variable = false; Теперь напишем оператор цикла while. while (!flag_variable) { Первое действие должно предложить пользователю ввести число. System.out.print ("Введите целое число больше или равное 0 и меньше 100") Далее я напишу оператор ввода. guessed_number = console.nextInt(); После этого я напишу оператор if…else для обновления переменной флага в случае выполнения определенного условия: if (guessed_number == random_number) { System.out.println("Поздравляем! Вы угадали правильное число."); Далее обновим значение переменной флага: flag_variable = true; } Теперь добавим здесь оператор else…if: else if (guessed_number less than random_number) { System.out.println("Угаданное вами число меньше случайного числа"); System.out.println("Угадайте еще раз. Пожалуйста!!!!!"); } Затем напишем оператор else: else { System.out.println("Угаданное вами число больше случайного числа"); System.out.println("Угадайте еще раз. Пожалуйста!!!!!"); } } } После того, как всё правильно настроено, теперь вы можете запустить свою программу и посмотреть, что произойдёт. Спасибо за просмотр, надеюсь, это видео было информативным. Пожалуйста, не забудьте поставить лайк и подписаться на этот канал. До встречи в следующем видео. #codingriver #javatutorial #learnjava