Learning Perl

#!/usr/bin/perl

#3.1recat.pl
#把提供的内容反序输出,与cat命令相反的功能。

@line=(<STDIN>);
@reline = reverse @line;
print @reline;


#另一个方法:
#print reverse (<STDIN>);

 ===============

#!/usr/bin/perl

#3.2array.pl
@arr = qw/ fred betty barney dino wilma pebbles bamm-bamm /;
chomp (@num = <STDIN>);

foreach (@num){
	print "@arr[$_-1]" , "\n";

}

 ===================

 

#!/usr/bin/perl

#3.3sortArr.pl

#显示在同一行
chomp (@arr = <STDIN>);
@sorted = sort @arr;
print "@sorted\n";


#print sort <STDIN>;每行分开显示的做法
 

=============================

 

#!/usr/bin/perl

#4.1totalroutine.pl
sub total{
	my $sum=0;
	foreach (@_){	#@_ 是形式参数的内置默认变量
	$sum += $_;		#$_ 是循环的内置默认变量
	}
	$sum;
}

my @fred = qw /1 3 5 7 9 /;
my $fred_total = &total(@fred);
print "数组\@fred求各的结果为:$fred_total \n";
print "请输入需要求和的数字,每行一个:\n";
my $user_total = &total(<STDIN>);
print "求和的结果为:$user_total\n";


@arr = 1..1000;
#过程的调用不可以放在双引号内!!!
#这样调用也行:&total(1..1000)
print "1到1000的求和结果为:",&total(@arr) , "\n";

 

 

============================

 

#!/usr/bin/perl

#4.2routine.pl

sub total{
	my $sum=0;
	foreach (@_){	#@_ 是形式参数的内置默认变量
	$sum += $_;		#$_ 是循环的内置默认变量
	}
	$sum;
}

sub avg{
	my $sum = &total(@_);
	my $avarge = $sum / @_ ;
	$avarge;
}

sub above_average{
	my $average = &avg(@_);
	my @list;
	foreach $element (@_){
		if($element > $average){
			push @list,$element;
		}
	}
	@list;
}


print &avg(8, 9 ,10) , "\n";
@abolist = &above_average(1..10);
print "above arerage: @abolist \n"; 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值