【程序设计】随机数
隨機數
隨機數是出現沒有任何規律也不可預測的一些數字,用途廣泛。
根據密碼學原理,隨機數的隨機性檢驗可以分為三個標準:
- 統計學偽隨機性:統計學偽隨機性指的是在給定的隨機比特流樣本中,1的數量大致等于0的數量,同理,“10”、“01”、“00”、“11”四者數量大致相等。類似的標準被稱為統計學隨機性。滿足這類要求的數字在人類“一眼看上去”是隨機的。
- 密碼學安全偽隨機性:其定義為,給定隨機樣本的一部分和隨機算法,不能有效的演算出隨機樣本的剩余部分。
- 真隨機性:其定義為隨機樣本不可重現。實際上只要給定邊界條件,真隨機數并不存在,可是如果產生一個真隨機數樣本的邊界條件十分復雜且難以捕捉(比如計算機當地的本底輻射波動值),可以認為用這個方法演算出來了真隨機數。
相應的,隨機數也分為三類:
- 偽隨機數:滿足第一個條件的隨機數。
- 密碼學安全的偽隨機數:同時滿足前兩個條件的隨機數??梢酝ㄟ^密碼學安全偽隨機數生成器計算得出。
- 真隨機數:同時滿足三個條件的隨機數。
Random隨機函數
通常,隨機函數Random()的取值是[0.0,1.0)間的浮點數,取值分布與分布函數有關,比較理想的是均勻分布。
想要產生從整數M開始到M+N之間隨機整數,可以用如下公式:Floor(Random*N)+M。
例如,取4~13之間的隨機整數,可以用Floor(Random*10)&
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
- 上一篇: 数据库系统实训——实验四——视图
- 下一篇: 简单的启动代码 IMPORT |Imag