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
功能:猜數字遊戲核心的發展中版本
作者:張凱慶 */
回到練習題目