Perl入門講座
翻訳校正:石橋啓一郎
Perlは過去10年間でもっともよく使われているスクリプト言語であり、ウェブの裏側でも活躍している。これからPerlに触ってみようという人向けに、Perlの特徴からインストールの手順、プログラムの例までを説明する。
ここでは、数字のべき乗を計算してみることから始めることにする。次のプログラムは、x^yを出力する。
$x = 7;
$y = 12;
$result = 1;
while ($y > 0) {
$result = $result * $x;
$y--;
}
print $result;
print "\n";
このプログラムを実行すると、次のような出力が得られる。
% perl pow.pl 13841287201
このプログラムでは、whileループを使って繰り返し$resultを$xでかけ算しており、ループが実行される度に$yの値が1減らされるため、このループは$y回しか実行されない。Perlでは数字や文字などのスカラー変数は、変数名の前に「$」を付けることで見分け、他の型と区別する。ただし、このプログラムはあまり正しくない。もし、負の数でのべき乗を計算したければどうなるだろうか。yを-1に変えてこのプログラムを実行したら、ループは実行されず1が出力されるだろう。これは正しくないので、次のように変える必要がある。
$x = 7;
$y = -1;
$result = 1;
if ($y > 0) {
while ($y > 0) {
$result = $result * $x;
$y--;
}
} else {
while ($y < 0) {
$result = $result / $x;
$y++;
}
}
print $result;
print "\n";
ここではプログラムを分岐させるためにif文を使っており、もしyが正の数であれば最初のループを実行し、負の数であれば2番目のループを実行する、カウントを増やしていくと共に繰り返し割り算を行い、yがゼロであればresultは1のままで終了する。このプログラムを実行すると、次のような出力が得られる。
% perl pow.pl 0.142857142857143
もちろん、Perlではこのような一般的な関数を書き換える必要はなく、組み込みの「**」という演算子がある。例えば、上の関数は単に次のように書くこともできる。
$x = 7; $y = -1; print $x ** $y; print "\n";
おわりに
これでPerlを入手して実行することができるようになり、読者はプログラムを書き始めた。しかし、Perlを使うことの真の有利さは、コマンドラインからの入力を処理することや、正規表現の力を使ってテキスト処理を行うことにある。今後、builderではこうしたことを紹介していく予定だ。
この記事は海外CNET Networks発のニュースをシーネットネットワークスジャパン編集部 が日本向けに編集したものです。海外CNET Networksの記事へ
- 8人の推薦記事
- 5人がクリップ
-
ソーシャルブックマーク(-)
- トラックバック(0)
- 昨日のトップ記事
- 3日前
- 4日前
- 5日前
- 6日前
- ホワイトペーパー
- 読者投票
- 話題のタグ
フォトレポート:世界各国の優秀な技術者がパリに集結--Imagine Cup 2008世界大会
バッチ処理でデータベース活用:4つの課題と5つの解決ポイント
Rubyでどう書く?:RubyでWord文書を作成する
Adobe Acrobat 9--音声やクイズを埋め込んでeラーニング
ウェブ制作者が仲間と幸せに仕事をする方法:仲間との出会い
Excelで多用する雑多な操作を素早く片付けるための10のティップス(前編)
開発者のFirefox 3:非互換のアドオンをインストール
Techno Exchange
「未来の、その先」をどう提言していくか
ZDNet Japan Green IT
今知るべき仮想化情報
DELL連載第4回〜「Microsoft System Center」