加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl 中一个随机编故事的程序(rand随机函数的应用举例)+好的程

发布时间:2020-12-15 21:04:19 所属栏目:大数据 来源:网络整理
导读:use strict;use warnings;#定义变量my $count;my $input;my $number;my $sentence;my $story;#定义四个数组#定义了人物数组my @nouns=('Dad','TV','Mom','Groucho','Rebecca','Harpo','Robin Hood','Joe and Moe',);#定义了动作数组my @verbs=('ran to','gig
use strict;
use warnings;

#定义变量
my $count;
my $input;
my $number;
my $sentence;
my $story;

#定义四个数组
#定义了人物数组
my @nouns=
(
	'Dad','TV','Mom','Groucho','Rebecca','Harpo','Robin Hood','Joe and Moe',);

#定义了动作数组
my @verbs=
(
	'ran to','giggled with','put hot sauce into the orange juice of','exploded','dissolved','sang stupid songs with','jumped with',);

#定义了地点数组
my @prepositions=
(
	'at the store','over the rainbow','at the beach','before dinner','in New York City','in a dream','around the world',);


do 
{
	#每次运行以前,清空$story的内容
	$story='';
	#以下是随机组合生成故事
	for ($count =0;$count<6;$count++)
	{
		#我们划分一下结构,scalar @nouns 是获取@nouns数组元素的个数,然后用rand总这几个数中随机生成几个,最后int是将得到的数取整
		$sentence =$nouns[int(rand(scalar @nouns))]
		." "
		.$verbs[int(rand(scalar @verbs))]
		." "
		.$nouns[int(rand(scalar @nouns))]
		." "
		.$prepositions[int(rand(scalar @prepositions))]
		.'.';
		$story .=$sentence;
	}
	print "n",$story,"n";
	print "nType "quit"to quit,or press Enter to continue:";
	$input=<STDIN>;
}
#这里是利用正则表达式来匹配首字符是q的字符串,如果有,那么就退出,/^是匹配起始位置,/i是不区分大小写
until ($input=~/^s*q/i);
	exit;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读