猜數字遊戲設計原理

猜數字遊戲:

總共有四個空,讓玩家猜四個0~9有序不重複的數字。

如果一個數位置和數字都正確,就得到了一個A;

如果一個數位置不對,數字對,就得到了一個B。

每次玩家猜完之後告訴玩家他得到了多少個A和多少個B。

 

原理:

 

首先我們用一個長度爲4的一維數組保存這四個數,

使用隨機函數產生第一個數,

使用隨機函數產生第二個數,並且判斷如果這個數和第一個數相等,就重新生成,這個步驟寫進一個循環,

第三步、第四步和第二步類似。

如果要產生的不重複的數字很少,直接寫就可以了,如果數字很多,可以寫個循環。

 

這裏還有第二種方法。

第二種方法,有一個長度爲10的數組用以表示某一個數是否已經被隨機到,

有一個int型隨機數數量計數器,寫一個循環每次隨機函數產生數,如果這個長度爲10的數組表示爲沒被隨機到,則標示這個位置是隨機數,並且計數器+1,否則就重新隨機產生。

這裏,我想到了桶排序,跟這個有一些相似。

這樣得到的四個數一定是從小到大排列的,所以我們還得用循環+隨機,決定它們的順序。

這樣,就完成了產生四個有序不重複的數字的步驟。

 

至於比較玩家輸入的內容和程序隨機產生的數是否一致,因爲數字很少,可以直接比較;

如果想想數字多的情況,也可以寫一個嵌套循環。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章