最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

隨機(jī)數(shù)算法是什么?

2023-03-01 00:46 作者:我是2B恒  | 我要投稿

在計(jì)算機(jī)中并沒有一個(gè)真正的隨機(jī)數(shù)發(fā)生器,但是可以做到使產(chǎn)生的數(shù)字重復(fù)率很低,這樣看起來好象是真正的隨機(jī)數(shù),實(shí)現(xiàn)這一功能的程序叫偽隨機(jī)數(shù)發(fā)生器。 有關(guān)如何產(chǎn)生隨機(jī)數(shù)的理論有許多如果要詳細(xì)地討論,需要厚厚的一本書的篇幅。不管用什么方法實(shí)現(xiàn)隨機(jī)數(shù)發(fā)生器,都必須給它提供一個(gè)名為“種子”的初始值。而且這個(gè)值最好是隨機(jī)的,或者至少這個(gè)值是偽隨機(jī)的。“種子”的值通常是用快速計(jì)數(shù)寄存器或移位寄存器來生成的。 下面講一講在C語言里所提供的隨機(jī)數(shù)發(fā)生器的用法?,F(xiàn)在的C編譯器都提供了一個(gè)基于ANSI標(biāo)準(zhǔn)的偽隨機(jī)數(shù)發(fā)生器函數(shù),用來生成隨機(jī)數(shù)。它們就是rand()和srand()函數(shù)。這二個(gè)函數(shù)的工作過程如下:”) 首先給srand()提供一個(gè)種子,它是一個(gè)unsigned int類型,其取值范圍從0~65535; 2) 然后調(diào)用rand(),它會(huì)根據(jù)提供給srand()的種子值返回一個(gè)隨機(jī)數(shù)(在0到32767之間) 3) 根據(jù)需要多次調(diào)用rand(),從而不間斷地得到新的隨機(jī)數(shù); 4) 無論什么時(shí)候,都可以給srand()提供一個(gè)新的種子,從而進(jìn)一步“隨機(jī)化”rand()的輸出結(jié)果?!∵@個(gè)過程看起來很簡(jiǎn)單,問題是如果你每次調(diào)用srand()時(shí)都提供相同的種子值,那么,你將會(huì)得到相同的隨機(jī)數(shù)序列,這時(shí)看到的現(xiàn)象是沒有隨機(jī)數(shù),而每一次的數(shù)都是一樣的了。例如,在以17為種子值調(diào)用srand()之后,在首次調(diào)用rand()時(shí),得到隨機(jī)數(shù)94。在第二次和第三次調(diào)用rand()時(shí)將分別得到26602和30017,這些數(shù)看上去是很隨機(jī)的(盡管這只是一個(gè)很小的數(shù)據(jù)點(diǎn)集合),但是,在你再次以17為種子值調(diào)用srand()后,在對(duì)于rand()的前三次調(diào)用中,所得的返回值仍然是在對(duì)94,26602,30017,并且此后得到的返回值仍然是在對(duì)rand()的第一批調(diào)用中所得到的其余的返回值。因此只有再次給srand()提供一個(gè)隨機(jī)的種子值,才能再次得到一個(gè)隨機(jī)數(shù)?!∠旅娴睦佑靡环N簡(jiǎn)單而有效的方法來產(chǎn)生一個(gè)相當(dāng)隨機(jī)的“種子”值----當(dāng)天的時(shí)間值:g#椋睿悖歟酰洌澹Γ歟?;stdieP瑁Γ紓?; #ince酰洌澹Γ歟?;stde椋猓瑁Γ紓?;?。#椋睿悖歟酰洌澹Γ歟?;sys&#4AP唬簦穡澹螅瑁Γ紓?; #ince酰洌澹Γ歟?;sys&#4AP唬簦椋恚澹猓瑁Γ紓簦弧。觶錚椋洹。恚幔椋睿ǎ觶錚椋洌。。椋睿簟。?; unsi<傤ed?。椋睿簟。螅澹澹洌鄭幔歟弧。螅簦潁酰悖簟。簦椋恚澹狻。簦椋恚澹攏酰媯弧。媯簦椋恚澹ǎΓ幔恚穡唬簦椋恚澹攏酰媯弧。螅澹澹洌鄭幔歟劍ǎǎǎǎ酰睿螅椋紓睿澹洹。椋睿簦簦椋恚澹攏酰媯簦椋恚澹Γ幔恚穡唬埃疲疲疲疲。ǎ酰睿螅椋紓睿澹洹。椋睿簦簦椋恚澹攏酰媯恚椋歟歟椋簦恚蕖。ǎ酰睿螅椋紓睿澹洹。椋睿簦簦椋恚澹攏酰媯恚椋歟歟椋簦恚?; s}幔睿洌ǎǎ酰睿螅椋紓睿澹洹。椋睿簦螅澹澹洌鄭幔歟?;?。媯錚潁ǎ椋劍?;i&e?;10;++i) 7w潁椋睿簦媯ǎΓ瘢酰錚?;%6d\n&queP?;begjrand());?。∩厦娴某绦蛳仁钦{(diào)用_ftime()來檢查當(dāng)前時(shí)間yc并把它的值存入結(jié)構(gòu)成員timeBuf.time中wae當(dāng)前時(shí)間的值從1970年1月1日開始以秒計(jì)算aeh在調(diào)用了_ftime()之后在結(jié)構(gòu)timeBuf的成員millitm中還存入了當(dāng)前那一秒已經(jīng)度過的毫秒數(shù),但在DOS中這個(gè)數(shù)字實(shí)際上是以百分之一秒來計(jì)算的。然后,把毫秒數(shù)和秒數(shù)相加,再和毫秒數(shù)進(jìn)行異或運(yùn)算。當(dāng)然也可以對(duì)這兩個(gè)結(jié)構(gòu)成員進(jìn)行更多的計(jì)算,以控制

隨機(jī)數(shù)算法是什么?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
瑞金市| 虎林市| 麻栗坡县| 安康市| 凭祥市| 汉寿县| 师宗县| 罗田县| 油尖旺区| 阿鲁科尔沁旗| 天门市| 双辽市| 仙游县| 仁布县| 南皮县| 格尔木市| 西畴县| 临泉县| 荃湾区| 江西省| 高台县| 常宁市| 岢岚县| 同心县| 金门县| 赤水市| 石屏县| 新宁县| 木兰县| 盱眙县| 锡林郭勒盟| 平安县| 遵义市| 禄丰县| 化德县| 蒲城县| 济阳县| 汕头市| 东明县| 沙湾县| 博乐市|