作者sjgau (sjgau)
看板C_and_CPP
標題Re: [問題] rand()的問題
時間Thu May 14 12:22:05 2009
srand((unsigned) time(NULL));
// 這行是一定要的
// a, b 的宣告 最好移到 迴圈的外面
int a, b;
for (i=0;i<10;i++) {
a= rand();
b= rand();
cout << a << ", " << b << endl;
}
以上 應該 沒有問題
※ 引述《QQ29 (我愛阿蓉)》之銘言:
: 請教各位!
: 使用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: 61.20.182.139
1F:推 littleshan:宣告不需要移到迴圈外吧? 05/14 12:55
2F:推 ledia:原 po 想移出去的目的是什麼 ? 05/14 13:19
3F:推 VictorTom:如果是自定義的obj不是會有一直重複ctor/dtor的狀況嗎?? 05/14 15:14
4F:推 littleshan:當然,但 int 沒有 ctor/dtor 05/14 16:22