C++ 入門指南 4.01
練習 30.8 參考程式 - 練習發展猜數字遊戲計算核心
#include <iostream> #include <cstdlib> #include <ctime> #include <set> using namespace std; int main(void) { // 宣告答案變數 int answer; while (true) { // 建立隨機答案變數 srand(time(NULL)); answer = rand() % 10000; // 確保答案是四位數 if (answer < 1000) { continue; } // 將答案數字個別放入集合 set<int> answer_set; int multiple = 1000; int demo = answer; for (int i = 0; i < 4; i++) { int demo2 = demo / multiple; answer_set.insert(demo2); demo = demo % multiple; multiple /= 10; } // 檢查是否有重複數字 if (answer_set.size() == 4) { break; } else { continue; } } // 印出答案變數 cout << "遊戲答案:" << answer << endl; return 0; } /* 《程式語言教學誌》的範例程式 http://kaiching.org/ 檔名:guess_demo08.cpp 編譯:g++ guess_demo08.cpp 執行:./a.out 功能:猜數字遊戲核心的發展中版本 作者:張凱慶 */