で1-100の数字を推測
我々は最初の1から100の乱数を生成する必要が
乱数生成するrandでC ++での()
関数rand()%100の乱数を生成するとの
結果として得られる数は固定されている
異なる実行を可能にするために異なるプロセスの数
、我々は時間とに関連した番号を生成することができますので、
CTIMEファイルを導入する必要が
それぞれ以下の2つのステップを介して実行異なる番号を生成することができます
srand関数(INT(時間(0)));
int型GUESS =ランド(100%)。
彼らはサイクル、あなたは、whileループを使用することができます何回か分からないので
、ユーザーが結果の限定された番号を入力するだけを許可する場合、それができるため、サイクル
の入力は必ずしもデジタルされていないが
、それぞれの入力を判断する必要があるので
>> CINを。
一方、(cin.fail())
{
cin.clear();
cin.sync();
COUT << "入力エラー" << ENDL;
CIN >> A;
};
cin.clear(); cin.sync( );エラー入力をクリアすることができるようにするために前に
あなたは空にしていない場合は、プログラムが無限ループに入ります
空にした後、再び入力を
あなたは正しい以降を入力すると最後に、プログラムは終了します
終了を回避するため
のシステム(「一時停止」)を追加することができ、
簡単なショットや他の操作を
次の結果コードは付属して実行
#include <iostream>
#include<ctime>
#include<cstdlib>
#include<istream>
using namespace std;
void main()
{
srand(int(time(0)));
int guess = rand() % 100;
cout << "请输入一个1到100内的整数" << endl;
int a;
do
{
cin >> a;
while (cin.fail())
{
cin.clear();
cin.sync();
cout << "输入错误" << endl;
cin >> a;
};
if (a == guess)
{
cout << endl<<"正确" << endl;
break;
}
else if (a > guess)
{
cout << endl<<"过大" << endl;
}
else
{
cout << endl<<"过小" << endl;
}
} while (a != guess);
system("pause");
}