srand(time(0))
似乎沒有正確地播種rand()
,生成的第一個數字總是相同的。第一個rand()在srand(time(0))後生成相同的值
這是在OS X上運行,有沒有我的設置或我的代碼有問題?我等了幾秒鐘才重新運行程序。第一個數字只在一天後增加,其餘數字總是隨機的。
#include<iostream>
using namespace std;
int main()
{
int Num1,Num2;
// seed the random number generator
srand((unsigned int)time(NULL));
Num1 = rand() %49 +1 ;
do {Num2 = rand() % 49 + 1;}
while(Num2 == Num1);
///Display Random Numbers
cout<<"Numbers are: "<<endl;
cout<<Num1<<" "<<Num2<<endl<<endl;
return 0;
}
在您的問題中無法找到任何特定的Xcode。刪除了標籤。 – 2014-12-04 18:25:10
在程序運行之間等待多久?只要我在兩次運行之間等待至少一秒,我就會在Windows上得到不同的數字。 – 2014-12-04 18:27:58
您應該包含stdlib.h或cstdlib和time.h或ctime以確保您使用的函數的原型可見。 – 2014-12-04 18:28:53