開発環境
- Mac OS X Snow Leopard (OS)
- TextWrangler(Text Editor) (いずれはBBEditを入手したい!)
- Script言語:Perl
『初めてのPerl 第5版』(Randal L. Schwartz, Tom Phoenix, brian d foy 共著、近藤 嘉雪 訳、オライリー・ジャパン、2009年、ISBN978-4-87311-427-9) の4章(サブルーチン), 4.12(練習問題)、3を解いてみる。
3.
やり方の1つ。(「やり方は何通りもある」(TIMTOWTDI(There Is More Than One Way To Do It.)))
コード(TextWrangler)
#!/usr/bin/perl
use strict;
use warnings;
# 数の合計を個数で割って平均を計算して
# 返すサブルーチン
sub average {
my $sum = 0;
foreach (@_){
$sum +=$_;
}
$sum / @_;
}
# 数のリストを受け取って、その中から平均よりも
# 大きなもののリストを返すサブルーチン
sub above_average {
my $average = &average (@_);
my @list;
foreach (@_){
if ( $_ > $average ){
push @list,$_;
}
}
@list;
}
# 問題のテストプログラム
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";
入出力結果(Ternimal)
0 コメント:
コメントを投稿