作者QQ29 (我愛阿蓉)
看板C_and_CPP
標題[問題] rand()的問題
時間Thu May 14 09:34:27 2009
請教各位!
使用rand()如果我沒有用先呼叫srand()的話
for(int i=0;i<10;i++)
{
int a=rand();
int b=rand();
cout<<a<<","<<b<<endl;
}
為什麼他這樣我執行好幾次程式他印出來的 sequence 都會一樣
是為什麼呢?
是因為都同一張亂數表 然後他依照順序回傳數值回來嘛?
另外想問一下 -1.#IND 是什麼意思呢?
-1.#INF 是除以零 可是不知道IND是什麼耶 而且為什麼是 -的呢?
因為找不到bug= =
我有一行程式寫
int B=4;
G2[i] = (float)((rand() % (B + B)) - B) / B;
有時候G的值會出現-1.#IND 但是我就是不懂 怎麼會發生這種事情...
而且不是每次都出現@@
謝謝各位
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.113.207.187
※ 編輯: QQ29 來自: 140.113.207.187 (05/14 09:42)
推 chrisdar:1.YES 2.overflow 05/14 09:41
推 chrisdar:int a = 0; cout << 0.0 / a << "," << 1.0 / a << endl; 05/14 09:49
→ QQ29:可是我B不是=4嗎 他的除數 不是為0 怎麼會這樣呢!!?? 05/14 09:51
推 jerohands:先呼叫srand(NULL),參數可以隨你自己給 05/14 18:10