看板 C_and_CPP 關於我們 聯絡資訊
請教各位! 使用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