1樓:帳號已登出
樓上幾位的答案都不完全。
首先用srand()初始化隨機種子,如果要每次不同的話,建議用time來初始化。然後取點的時候不要rand()%50這樣取,這樣取出來的點的隨機性不是真正意義上滿足各種情況出現概率相同的。
詳細見下面的**,比如取10個點:
srand(time(null));
for (k=0; k<10; +k)
i = rand() static_cast(rand_max) *50 + 1;
j = rand() static_cast(rand_max) *50 + 1;
process_point(i, j);
2樓:清志詩
用srand函式通過系統的時間來初始化隨機數生成器。這樣的生成的數才是真正隨即的。**如下:
srand(1);
i=rand()%50+1;
srand(1)
j=rand()%50+1;
3樓:皮傑皮傑
i=rand()%50+1;
j=rand()%50+1;
座標(i,j)就是隨機點。
範圍是-35,35的話就是。
i=rand()%71-35;
j=rand()%71-35;
前面加個srand(time(null))以時間為種子,防止每次的隨機數相同。
4樓:網友
ls大哥 rand()要設定種子吧?不然可能一樣值?
c++中如何讓實現隨機抽取
5樓:匿名使用者
#include char s = ,t[3];.sranda((unsigned)time(null));// 初始化隨機數種子t[i] = s[rand() 3]; // 串t中存放的就是隨機存取的內容。
用c++6.0怎麼做隨機出現乙個點
6樓:網友
定義個點,;;然後就有了隨機點,還有個問題,那就是程式如果重新開啟的話,隨機點會是同乙個,應為rand()是呼叫乙個隨機數**,而rand()預設的是同一**!多次呼叫的時候他就依次呼叫表中的下乙個值!
7樓:歸悅欣
用隨機函式可以獲取乙個隨機數,根據隨機數產生隨機點。
在c++裡怎麼弄隨機數? 還有,怎麼弄種子
8樓:藍色**
獲得隨機數,可以這抄麼定義。
int a=rand%100;
那麼baia就是100以內的任意乙個數字du;話雖如此,但是zhi你會發現實際上每dao次執行程式,a都是固定的,不會改變,這個根本就不能算是真正的隨機。
那麼你只需要加上標頭檔案 #include
然後再定義a之前加上種子函式,srand(time(0));//這個就叫做種子,這樣,你每次執行,a的值都是變化的。
c++如何做到隨機rand取各不一樣?
9樓:網友
使用隨機數發生器的初始化函式,即在rand呼叫前使用。
srand((unsigned) time(null));
10樓:
先設隨機種子:
#include
srand((unsigned)time(null));
然後取隨機數:
for (i=0;i<100;i++)
11樓:網友
在迴圈中作判斷啥,判斷是否和以前取的數相等,如果相等則忽略該數,不相等的數才取出來。
關於c++隨機數的獲取
12樓:網友
隨機數做密碼?那麼你下次怎麼用呢?
有個函式rand()倒是可以生成隨機數的,你找找說明看,另外,推薦使用一些已有的加密演算法,比方說aes……
c++隨機選取組合
13樓:重新整理①丅
#include
#include
using namespace std;
void fillarr(int* pnarr, int *pndesarr, int i)
/如果重複則重新隨機取乙個數。
if (bisrepeat)
如果不重複就將這個隨機取得的數填充到目標陣列中else
int main()
int ndesarr[9] = ;
srand((unsigned)time(null));
for (int i = 0; i < 9; +i){fillarr(narr, ndesarr, i);
cout<
14樓:網友
你可以用set實現。
setrandomdata = new hashset();
random r = new random();
int icount = 0;
while(icount < 11)
randomdata 就是你想要取的集合演算法就是如此,就在這個文字器的你除錯一下。
怎麼用c 生成指定隨機數,在c 裡怎麼弄隨機數?
滄海雄風 include include include using namespace std int main srand unsigned time null 初始化時間種子 int ret rand 3 產生 0 1 2 三種隨機數 int real pow 2,ret 2的0次方 1 2的...
電腦C盤裡的東西太多太雜,怎麼弄啊! 5
電腦c盤裡的東西太多太雜,怎麼弄啊!估計你沒中毒!.你可以定時用清理軟體清理的。比如,金山的清理模組。經過清理了一般是沒有問題的 比如如果迅雷老崩潰,是很佔c盤的 注意必須是子檔案才能順利刪除!東西不要放桌面,桌面也屬於c盤的,不行就重灌。 vista本來安裝好後就比較大,建議增加c盤容量,可以用v...
路由器怎麼弄,路由器怎麼弄??
先把入戶線連到貓的主介面,然後將 和另一根網線分別接到貓上的另外兩個介面上。上面有標識,乙個是接 線的 telephone 乙個是接網的。然後將結網的那根線連到路由器主入口,上面寫著wan的那個。一般都是第乙個或最後乙個。很好找。然後再用另外兩根網線分別接到路由器上標著1 2 3 4中任意兩個介面上...