a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Perl > 正文

perl產(chǎn)生隨機(jī)數(shù)實(shí)現(xiàn)代碼

2020-06-04 20:28:21
字體:
供稿:網(wǎng)友

Perl利用函數(shù)rand()和srand()為隨機(jī)數(shù)(更確切的說是"偽隨機(jī)數(shù)")字符串的生成提供了基本的工具。這些函數(shù)不是利用加密來提供安 全性的,所以不要利用它們?yōu)槟憬鹑谛畔⒌募用堋5牵绻阈枰獮槟愕南乱粋€(gè)游戲或者動(dòng)態(tài)Web網(wǎng)站的新特性設(shè)計(jì)一個(gè)簡單的隨機(jī)數(shù)生成器,那么 rand()和srand()可能就是你所需要的。

函數(shù)rand()是真正的隨機(jī)數(shù)生成器,而srand()會(huì)設(shè)置供rand()使用的隨機(jī)數(shù)種子。函數(shù)rand()會(huì)返回一個(gè)處于0和你所指定的數(shù) 值(缺省為1)之間的分?jǐn)?shù)。如果你在第一次調(diào)用rand()之前沒有調(diào)用srand(),那么系統(tǒng)會(huì)為你自動(dòng)調(diào)用srand()。

要注意,使用同種子相同的數(shù)調(diào)用srand()會(huì)導(dǎo)致相同的隨機(jī)數(shù)序列被生成。這在有的時(shí)候很方便,尤其在游戲編程里,你可能想要重復(fù)讓隨機(jī)事件按照精確的相同序列出現(xiàn)。

像下面這樣使用rand():

print "Your lucky number for today is: " . int(rand(100) + 1) . " ";
指令:rand
語法:rand($interger)
說明:常和函數(shù)srand搭配來取得一隨機(jī)數(shù),如果沒有先宣告stand函數(shù)的話,則取出的常數(shù)值是一個(gè)固定值。這個(gè)語法會(huì)返回一個(gè)介于0和$interger之間的數(shù)值,如果$interger省略的話,則會(huì)返回一個(gè)介于0和1 的數(shù)值。

示例:
srand; #要先宣告srand函數(shù),才能產(chǎn)生隨機(jī)數(shù)的效果
$int=rand(10); #$int的值會(huì)大于0而且小于10如果希望產(chǎn)生的亂數(shù)是整數(shù)的話,就要再加上int #這個(gè)函數(shù)
$int=int(rand(10)); #$int的值是一個(gè)整數(shù),且值在0和9之間
————————–
$int=rand(10);
$int=int(rand(10));
print "int is $int/n";

運(yùn)行:

int is 9
再次運(yùn)行:
int is 7
#可見rand取的是隨機(jī)數(shù)字

實(shí)例:我有一個(gè)7000行的文本數(shù)據(jù),想每次從中隨機(jī)提取1280行,提取100次,最后生成100個(gè)1280行的文本,該如何做?各位請指點(diǎn)。

代碼如下:
#!/usr/bin/perl
use strict;
use warnings;

my $data_file = "file1″;
print " Generating …/n";
open FH, "$data_file" or die "Can not open the required file $data_file !";
my @data = <FH>;
close FH;

for (1..100) {
my %hash;
while ((keys %hash) < 1280) {
$hash{int(rand($#data))} = 1;
}
open OUT, ">random$_.txt" or die "Can not open the required file random$_.txt !";
foreach (keys %hash) {
print OUT "$data[$_]";
}
close OUT;
}
print " Complete!/7″;

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 在线观看黄av | 一区二区三区精品 | www.亚洲 | 国产精品成av人在线视午夜片 | 欧美一级二级三级视频 | 日韩一区二区三区精品 | 亚洲一区二区三区久久 | 日韩中文视频 | 成人精品久久久 | 日韩成人免费 | 国产免费自拍 | 国产欧美一区二区在线观看 | 三级精品 | 亚洲精品久久久蜜臀 | 欧美www.| 精品国产乱码久久久久久1区2区 | 亚洲一区不卡 | 日韩在线观看 | 国产一级特黄aaa大片评分 | 欧美久久精品 | 黄页网站大全在线观看 | 国产精品日韩欧美一区二区 | 午夜视频91 | 午夜寂寞影视 | 99热在线播放 | 久久99精品久久久 | 一级黄色影视 | 久久精品色欧美aⅴ一区二区 | 欧美一区二区三 | 狠狠躁夜夜躁人人爽天天高潮 | 亚洲系列第一页 | 国产一级免费看 | 国产.com | 久久天堂av综合合色蜜桃网 | www.日| 一级电影院 | 成人午夜精品久久久久久久蜜臀 | 国产美女在线精品免费观看网址 | 国产不卡一二三区 | 欧美 日韩 高清 | 欧美成人区 |