C++亂數
亂數其實打一下標頭檔和程式碼就好,沒啥難的,很多遊戲也都拿它來用,當然給他學起來啦
產生固定亂數:
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
cout << rand() << endl;
cout << rand() << endl;
cout << rand() << endl;
}
執行結果:
不管你執行多少次,他答案就是那些數字,這叫固定的亂數
種子亂數:
- srand 他是來設定亂數的起始,所以一定要設定在rand之前喔
- 種子數不同產生亂數也不同,是無號數喔
int main()
{
unsigned seed;
cout << "請輸入種子數";
cin >>seed;
srand(seed);
cout << rand() << endl;
cout << rand() << endl;
cout << rand() << endl;
}
執行結果:
若輸入的種子數一樣,則它的結果會一樣。也就是不同種子數產生不同亂數,所以他還是有規則的
到底啥時可以用出隨機亂數阿,大家應該可以想到吧,就是讓種子數一直改變就行啦
產生隨機亂數:
就是用這個啦~~~ 巴巴巴>0< /~(丟)----> time(*指標)
- *指標可以是空指標或指向time_t型態的變數指標,NULL是定義cstdlib與ctime標頭檔中常數為0
- 標頭檔一定要打#include<ctime>
#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int main()
{
srand(time(NULL));
cout << rand() << endl;
cout << rand() << endl;
cout << rand() << endl;
}
那怎麼條它的範圍勒~~
請背公式:
下限+rand()%(上限-下限+1)------>下限<= x <=上限
int main()
{
srand(time(NULL));
cout << 1+rand()%(10-1+1) << endl;
cout << 1+rand()%(10-1+1) << endl;
cout << 1+rand()%(10-1+1) << endl;
}
END
文章標籤
全站熱搜

回饋您這方面資訊,我是從 PTT搜尋引擎的排名,看到大家推薦的內容而輾轉來到這, 不然每次看到一堆 Blog 文章,卻不知哪幾篇才是值得花時間一看的, 謝謝您用心分享的好文, 也回饋給您這實用的主題排名網站資訊,可查看與您 Blog 內容相關的排名好文,應該對寫 Blog 也有所幫助,期待您持續產出好文章 ^^ https://searchptt.cc/