付録 A. 練習問題の解答
この付録には、本書中に登場する練習問題の解答がコンテナで収められている。
第1章 練習問題の解答
この練習は簡単だ。 我々はすでに君たちにプログラミングを提供したのだから。 君たちの仕事はそれを機能させることだ:
print "Hello, world!\n";
v5.10以降であれば、
say:use v5.10; say "Hello, world!";
ファイルを作成せずにコマンドラインから試したい場合は、
-eスイッチを使ってコマンドラインでプログラミングを指定することができる:$
perl -e 'print "Hello, World\n"'-lというスイッチもあり、これは自動的に改行を追加してくれる:$
perl -le 'print "Hello, World"'Windowsのcommand.exe(またはcmd.exe)の引用符付けは、外側に二重引用符が必要なので、それを切り替える:
C:\> perl -le "print 'Hello, World'"シェルのクォート内で一般化クォートを使えば、クォートで頭を悩ませずに済む:
C:\> perl -le "print q(Hello, World)"v5.10以降では、
-Eスイッチを使って新機能を有効にすることができる。これにより、say:$
perl -E 'say q(Hello, World)'コマンドラインでこれを試すとは思っていなかった。しかし、これも一つの方法だ。コマンドライン・スイッチと機能の完全なリストはperlrunを参照のこと。
perldocコマンドはPerlに付属しているはずなので、直接実行できるはずだ。perldocが発見できない場合は、システムに別のパッケージをインストールする必要があるかもしれない。例えばUbuntuでは
perl-doc。このプログラミングも、前のエクササイズさえうまくいけば簡単だ:
@lines = `perldoc -u -f atan2`; foreach (@lines) { s/\w<(.+?)>/\U$1/g; print; }
第2章 練習問題の解答
ここに一つの方法がある:
#!/usr/bin/perl use warnings; $pi = 3.141592654; $circ = 2 * $pi * 12.5; print "The circumference of a circle of radius 12.5 is $circ.\n";
ご覧のように、このプログラムは典型的な
#!。Perlへのパスは異なるかもしれない。また、警告をオンにした。最初のコード行では、
$piの値をπの値にセットしている。優れたプログラマがこのように定数値を使うことを好む理由はいくつかある。3.141592654が複数回必要になった場合、プログラムに入力するのに時間がかかる。ある場所で誤って3.141592654、別の場所で誤って3.14159、数学的バグかもしれない。誤って3.141952654と入力して、誤った惑星に宇宙探査機を送ってしまわないようにチェックする行が1行しかない。最近のPerlでは、よりファンシーな文字を変数名として使うことができる。ソースコードにUnicode文字が含まれていることをPerlに伝えれば、π文字を名前付けに使うこともできた(付録C参照):
#!/usr/bin/perl use utf8; use warnings; $π = 3.141592654; $circ = 2 * $π ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access