2014-11-03 72 views
0


我想構建一個反向猜測遊戲。 (玩家腦子裏有一個數字,程序試圖猜測數字,你有三個按鈕,一個按鈕用於較小的提示,一個用於較大的提示,一個用於正確的提示)。我的應用程序正在按鍵生成數字,但問題是,它不記得我按下的按鈕。例如,程序提示編號爲50.我點擊「Smaller」按鈕,它會生成一個較小的數字,例如35。我點擊「Bigger」按鈕,即使按「Smaller」爲50也可以生成80或90。 。我怎麼能讓這個程序「記住」這個選擇?謝謝您最好的問候!
對不起,如果我不清楚,但我是初學者。

這是我的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你的問題,因爲它是目前不是真的可以回答。構建一個最簡單的例子,展示一個最簡單的代碼示例,清楚地顯示問題並解釋您期望的內容以及獲得的內容。 – 2014-11-03 18:49:57

回答

0

提示:未來,您應該發佈任何代碼,您必須顯示努力並避免downvotes。但是,我將把這篇文章解釋爲一個通用算法問題。

你會想兩個變量:

  • 高範圍:最高可能數量的用戶可以思考的。
  • 低範圍:用戶可以考慮的最低可能數量。

如果程序猜測50和用戶點擊較小,設定高至50,因爲你知道電話號碼必須是50歲以下的,從這一點上。

如果程序猜測35下,和在用戶點擊更大,設置低範圍到35

始終猜測低範圍和高範圍之間唯一號碼,在每個步驟更新。可能最好是在高低範圍之間的中點進行猜測,以最大限度地提高機會。這將是一個二進制搜索方法來猜測一個數字。