關(guān)于計(jì)算機(jī)自主隨機(jī)字符串的抽取
了解我的人,都知道,我是一個(gè)十分喜歡看電影的人,有的時(shí)候甚至一天看八部電影。但是這種到網(wǎng)頁查找電影,找到自己喜歡的電影讓后去看。這樣的過程我認(rèn)為日子長了,未免太沒有意思。因此我有了一個(gè)新奇的想法:我將部分電影名全部放到計(jì)算機(jī)里,讓計(jì)算機(jī)給我決定我應(yīng)當(dāng)看哪部電影。
這個(gè)想法非常的新奇,因?yàn)橥怀鳇c(diǎn)在于,并不是由我決定我因該看什么電影,而是由計(jì)算機(jī)決定。這增加了選擇電影名稱的有趣度,但也增加了是按這種情況的難度。
顯而易見,我的目的是讓計(jì)算機(jī)隨機(jī)抽取電影名,而不是為我推薦。這樣的話,有了目的,我們需要的材料以及必備的元素就已經(jīng)有了,在目的里面說到關(guān)鍵詞“計(jì)算機(jī)”“隨機(jī)”“電影名”。不過好說的是,“電影名”這個(gè)東西并不難搞,百度一搜一大把,這是很好辦到的事情,因此這個(gè)最先解決(誰叫他最簡單)。讓后就是解決“計(jì)算機(jī)”“隨機(jī)”這兩個(gè)東西了。非常明顯的是,最簡單的我們一眼就可以看出“計(jì)算機(jī)”,這就是我們需要的材料之一,只要有了它,才能完成我們的這次目的。我們準(zhǔn)備好計(jì)算機(jī),就要考慮下一個(gè)元素“隨機(jī)”。
不得不說“隨機(jī)”,在我們?nèi)四X這里是一種方法,我們十分明白,隨機(jī)就是從一堆東西中無規(guī)律的找出一個(gè)東西。然而,我們這種想法在計(jì)算機(jī)中也有一個(gè)獨(dú)特的名字稱號,他就是廣為人知的“算法”。在當(dāng)今計(jì)算機(jī)社會,對于程序的編寫有了非常大的進(jìn)步,我們這里使用C++,因?yàn)槲沂煜ぃ夷檬郑褪沁@么任性。
我們要養(yǎng)成不應(yīng)當(dāng)重復(fù)造輪子的好喜歡,因此,我們的前輩已經(jīng)幫我們解決了“隨機(jī)”這個(gè)問題,一個(gè)有趣的C++函數(shù)rand(),這既是我們要完成整個(gè)程序的重要函數(shù),了解了這個(gè)函數(shù)就幫我們解決了問題。在這里,我們先不討論這個(gè)函數(shù)里面到底是怎么運(yùn)行的,要討論這東西可大有學(xué)問。
那么我們就來寫一個(gè)十分簡單的程序:
#include
#include
#include
#include
using namespace std;
int main()
{
int a,b,c,d;//這里我們假設(shè)有四部電影
int e;//這里留著儲備隨即結(jié)果
e=rand(a,b,c,d);
cout 《 e;
return 0;
}
完成
既然我們的代碼寫完了,因?yàn)檫@是一個(gè)簡單的代碼,所以,可以找編譯器測試一下。
那么也會會問,什么叫做隨機(jī),有隨機(jī)這個(gè)數(shù)嗎?
當(dāng)然有,在大自然中,假設(shè)我們手中有一張硬紙,正面寫著1,反面寫著2,我們掏入空中,那么到底是正面還是反面呢?我們不知道,但我們知道這只是概率的問題,因此,隨機(jī)這個(gè)名詞,是統(tǒng)計(jì)學(xué)的一個(gè)名詞。那么人能否給出一個(gè)真隨機(jī)數(shù)呢?很抱歉,這是不可能的,因?yàn)槿说拇竽X、心理決定了自身對于哪個(gè)數(shù)字的偏向。我們來思考極端一點(diǎn)的,假設(shè)你被別人盯上了,他在你的汽車中安置了一枚炸彈,連接著你的手機(jī),你按了2這個(gè)按鈕,你的汽車爆炸了,嚇到了你,因此,你的潛意識會著重刻畫這個(gè)事件以及里面的“2”。所以,人并不可能給一個(gè)隨機(jī)的數(shù)字,因此才會有了民主投票選舉法等等方式,人在力求公平。當(dāng)然,人也可以間接的給出一個(gè)隨機(jī)數(shù),比如本自然段的開頭。
那么,計(jì)算機(jī)是否可以給出一個(gè)隨機(jī)數(shù)呢?抱歉,也是不現(xiàn)實(shí)的。那么為什么,眾所周知,計(jì)算機(jī)是一個(gè)邏輯機(jī)器,凡事都要依靠數(shù)學(xué)邏輯。因此我們動一動腳趾頭就可以想出來。那么為什么還要在上文中稱之為隨機(jī)?不是沒有隨機(jī)嗎?其實(shí)計(jì)算機(jī)關(guān)于隨機(jī)的問題,在計(jì)算機(jī)之父“馮·諾伊曼”就已經(jīng)意識到這個(gè)問題,他意識到這個(gè)單靠數(shù)學(xué)邏輯運(yùn)算的龐然大物,并不能直接產(chǎn)生隨機(jī)數(shù),但他可以間接,比如我們上文說到的rand()函數(shù),他是依靠數(shù)學(xué)公式遞歸出來的:Ni+1=(A* Ni + B)% M這是簡化后的公式。人們發(fā)現(xiàn),計(jì)算機(jī)可以間接的通過公式、二項(xiàng)式等等產(chǎn)生出來,也可以借助外部條件,比如無線的事實(shí)頻率、CPU的實(shí)時(shí)頻率、晶管分子震動次數(shù)等等,也可能夠隨時(shí)影響著計(jì)算機(jī)的隨機(jī)數(shù)。但這些方法產(chǎn)生的數(shù)字,并不是純粹的隨機(jī)數(shù),因此我們計(jì)算機(jī)科學(xué)管它叫做“偽隨機(jī)數(shù)”。
時(shí)間:2023-05-29 作者:校園文學(xué)網(wǎng) 來源:校園文學(xué)網(wǎng) 關(guān)注:
日記推薦
- 牛年正月也不閑著
- 人臉識盲、市里、“雨水”、搟面條、搓澡、牛年第一郵件
- 05-29
- 背書
- 在這個(gè)假期中,媽媽讓我背了很多古詩文。我以前背的古詩都是四句或者八句話,每句也就五個(gè)或者七個(gè)字,我背起來很快。
- 05-29
- 鬧心的親戚聚會
- 六點(diǎn)十一分的太陽我又錯(cuò)過,想拼命追趕,可零點(diǎn)睡沉的我不敢惘想太多。
- 05-29
- 堂妹
- 我的堂妹叫王蔓,我堂妹是我小姑家的女兒,我堂妹比我小6歲,我堂妹喜歡畫畫,她是藝術(shù)生考出來的。
- 05-29
- 為過牛年元宵而備戰(zhàn)
- 六點(diǎn)零三分的太陽也意想不到雪花會一走一過,我起來已近七點(diǎn),昨晚二十三點(diǎn)半才睡的,每天熬夜沒有收獲
- 05-29