2014-11-03 3 views
0


Я хотел бы построить обратную игру-догадку. (У игрока есть номер в уме, и программа пытается угадать номер. У вас есть три кнопки. Одна кнопка для меньшего наконечника, одна для большего и одна для правильного.) Мое приложение генерирует цифры на клавиатуре , но проблема в том, что она не запоминает мои кнопки, которые я нажал. Например, программа подскажет номер 50. Я нажимаю кнопку «Меньше», она генерирует меньшее число, например 35. Я нажимаю кнопку «Больше», и она может генерировать 80 или 90, даже если я нажал «Меньше» на 50 Как я могу заставить программу «запомнить» выбор? Спасибо, всего хорошего!
Извините, если я не понимаю, но я начинаю.

Это моя OnClick:

public void lowerClick(View v) { tip = randomGenerator.nextInt((highest + 1) - lowest) + lowest; textTip.setText(Integer.toString(tip)); {
Единственная проблема заключается в том, как я должен изменить высокий и низкие части, и если я должен добавить что-нибудь к программе. Надеюсь, теперь ясно. :) И спасибо за сотрудничество и понимание.Обратный подсказку-подсказку между двумя номерами

+0

См. Http://stackoverflow.com/help/how-to-ask. Ваш вопрос, поскольку он в настоящее время не может ответить на этот вопрос. Создайте минимальный пример, покажите минимальный пример кода, который четко показывает проблему и объясняет, что вы ожидаете и что получаете. –

ответ

0

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

Вы хотите две переменные:

  • High Range: Максимально возможное число пользователь может думать о.
  • Низкий диапазон: минимально возможное число, о котором может думать пользователь.

Если программа угадывает 50, и пользователь нажимает Меньшие установите высокий диапазон до 50, как вы знаете, это число должно быть меньше 50 с этого момента.

Если программа угадывает 35 следующая, и пользователь нажимает Bigger, установите нижний диапазон 35.

Всегда угадать только цифры между низким диапазоном и высоким диапазоном, обновляя на каждом шагу. Вероятно, лучше всего угадать точку на полпути между высоким и низким диапазоном, чтобы максимизировать ваши шансы. Это было бы как-то вроде двоичного поиска подход для угадывания числа.

Смежные вопросы