写一个子程序,名为&above_average,将一列数字作为其参数,返回所有大于平均值的数字(提示:

来源:互联网 发布:用友软件t6价格 编辑:程序博客网 时间:2024/06/07 23:30
#! usr/bin/perl
sub average
{
my $total;
my $n=0;
my $average;
foreach(@_)
{
$total+=$_;
$n++;
}
$average=$total/$n;
$average;
}
sub above_average
{
@above=();
my $t=&average(@_);
foreach(@_)
{
if($_>$t){push @above ,$_};
}
@above;
}
my @fred =&above_average(1 .. 10);
print "\@fred is @fred\n";
print "(Should be 6 7 8 9 10)\n";
my @barney = &above_average(100,1 .. 10);
print "\@barney is @barney\n";
print "(Should be just 100)\n";
原创粉丝点击