next up previous contents index
次へ: 単純な事は任せて--ループ処理 戻る: とりあえず書いてみよう--画面への出力   目次   索引

いつも同じじゃつまらない--キーボードからの入力

さきほどのプログラムに少し追加します。

01:  print "Hello!\n";
02:  print "Input any number:";
03:  $num=<>;
04:  print "Your number is $num";

繰り返しになりますが、各行先頭にある01:と言った数字は説明のための ものですので、書く必要はありません。またその後の空白も特に入れる必要はあり ません。入れても無視されます。下図はこのプログラムをエディタで書いている 様子です。

図 6.1: テキストエディタでプログラムを書いているところ

三行ばかり追加しました。書けたら保存します。「ファイル→保存」とすると、 さきほどと同じ名前 sample.pl で保存されます。保存したら 同様の手順で実行します。すでに kterm のウィンドウを開いているので perl sample.pl と書いてエンターキーを押すだけですね。下記のような 表示になるはずです。

図 6.2: ktermでプログラムを実行しているところ

このプログラムの動作は理解できるでしょうか。プログラム内では1行に一つず つ、4つの文が書いてありますね。各々の文は ; (セミコロン)で区切っ てあります。

基本的に、プログラムは先頭から順番に1文ずつ実行されていきます。まず1行目 には print 命令があります。print 命令はその後に続く文字を画面に表示する ものです。ここでは "Hello\n" を画面に表示します。\n はここ で行をあらためると言う意味です。

2行目も print 命令です。ここでは「適当な数字をいれて下さい」と言う内容の メッセージを画面に表示しています。

3行目では、キーボードから入力された内容を num と言う名前で保存し ます。コンピュータプログラムでは、このように何らかの内容を保存する場所 (入れ物)を変数と言います。変数はいくつでも用意できますが、区別でき ないと不便ですので、名前を付けられるようになっています。Perl では変数の 名前の先頭には $ (ドル記号)を付けて他の命令などと区別できるように なっています。

4行目では、"Your number is $num" という文字を画面に表示するような 命令を書いています。文字の中に変数 ($num)が含まれていますね。この 部分はその変数の内容で置き換えられて表示されます。つまり、あなたがプログ ラムを実行したときに入れた数字が表示されているはずです。

前節の1行だけのプログラムでは、何度実行しても同じ表示になりますね。この プログラムでは、実行する毎に利用者が数値を書き入れそれが最終的な表示に反 映されます。非常に簡単ながら、対話的なプログラムを完成させたことになりま すね。



NAGATO Yasushi 平成16年4月6日