猜數字遊戲設計原理

2021-05-26 19:30:55 字數 651 閱讀 2669

猜數字遊戲:

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

如果乙個數字置和數字都正確,就得到了乙個a;

如果乙個數字置不對,數字對,就得到了乙個b。

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

原理:首先我們用乙個長度為4的一維陣列儲存這四個數,

使用隨機函式產生第乙個數,

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

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

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

這裡還有第二種方法。

第二種方法,有乙個長度為10的陣列用以表示某乙個數是否已經被隨機到,

有乙個int型隨機數數量計數器,寫乙個迴圈每次隨機函式產生數,如果這個長度為10的陣列表示為沒被隨機到,則標示這個位置是隨機數,並且計數器+1,否則就重新隨機產生。

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

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

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

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

如果想想數字多的情況,也可以寫乙個巢狀迴圈。

猜數字遊戲

問題描述 猜數字遊戲 隨機出乙個兩位數,然後讓你猜,直到猜對為止。猜對後可以提示選擇是否再玩一次。include include using namespace std int main srand unsigned int time null int num rand 90 10 隨機出乙個兩位數...

猜數字遊戲

author 徐權 data 2015728 function 猜數字遊戲 實用平台 vs2012及以上 如果要移植到其他平台scanf s和puts s 應改為scanf和puts即可 include include include include define n 5 定義陣列大小,從而決定猜的...

猜數字遊戲

初次見到題目,覺得很簡單,可是仔細敲 時候卻發現根本無法處理如下情況 正確序列 1,2,3,4 猜測序列 1,1,1,1 我選擇用字串儲存正確的,然後如果對應上就把它變成字母,下一次就不會算他了,可是如果這樣子 正確 1,2,3,4 錯誤 2,3,3,4 錯誤的3算了,正確卻沒有算,這樣顯然不符合題...