Re: [問題] 隨機亂數rand()的問題
※ 引述《chin2049 (香吉士)》之銘言:
: #include<iostream>
: #include<stdlib.h>
: #include<ctime>
: using namespace std;
: int main(){
: srand( static_cast<unsigned int>(time(NULL))); //隨機函式
: int a = 11 + static_cast<int>( 1. * rand() * 10 / (RAND_MAX + 1.));
: cout << a << endl;
: system("pause");
: return 0;
: }
: 請教一下各位大大
: 我想要產生11~20的隨機亂數
: 但是為什麼執行結果都相同呢?
: 我是用深度學習C++自學
: 我是照書上打的
: 請問這個改良式的亂數產生方法哪裡錯了呢?
如果覺得 rand() 不好就自己改良
反正 rand() 內容只是一個 A * B + C 的東西
另外要每次不一樣
有幾個方法
1.取得時間 (如 GetTime or TickCount)
2.利用 CPU 內部 Counter (如 x86 的 RDTSC)
3.int 無定義 (某些平台無效)
當成 seed 值
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.44.181.148
推
05/16 16:47, , 1F
05/16 16:47, 1F
→
05/16 16:50, , 2F
05/16 16:50, 2F
→
05/16 16:50, , 3F
05/16 16:50, 3F
推
05/16 17:00, , 4F
05/16 17:00, 4F
→
05/16 17:30, , 5F
05/16 17:30, 5F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章