![]() |
|||
| | HOME | ご利用について | 推奨環境 | リンクに関して | 免責/規約 | お問合せ | ミスティーネット | リンク集 | | |||
|
HOME >> 数値の扱い
■ 簡単な四則計算
Perl では数値計算を行なう為の演算子が下記の5つ用意されております。 CGI に必要な計算処理などはこれらの演算子でほぼ事足りるでしょう。 (+ , - , * , / , %)
カッコを使った場合は、カッコ内の計算が優先されます。 カッコを使った場合と使わない場合では計算結果が変わってきますので注意してください。
代入演算子を使うと計算式を省略することが出来ます。
個人的には、代入演算子を使わずに明示的に計算式を書くほうが、後からプログラムソースを見た場合に どのような計算をしたかが確認しやすいため好きですが、ここら辺は個人の好みでしょう。 オートインクリメント・デクリメント演算子は数値データを 「+1」 または 「-1」 する際に使用します。 CGI ではカウンターによく使われる機能です。
前置き(++$c1) のインクリメントでは、値を返す前に変数の値を +1 増減します。 そのため、「$d1」 「$c1」 ともに値は 4 となります。 後置き($c2++) のインクリメントでは、値を返した後に変数の値を +1 増減します。 したがって、 「$d2」 の値には 3 がセットされ、その後 「$c2」 がインクリメントされ、「$c2」 の値には 4 がセットされます。 あまり使うことはないかも知れませんが、Perl では指数計算を行なうことも出来ます。
print 2 ** 10; ← 2の10乗の解(1024) が表示されます。
■ 数値の比較
数値同士を比較する際には、比較(関係)演算子を使います。 比較演算子は条件処理やループ処理を行なう際によく使われます。
[比較演算子の使用例]
■ 四捨五入
数値データを四捨五入する場合には、int 関数を使います。 int 関数では数値の整数部分のみを取り出して、小数点以下は破棄します。 → int 関数リファレンス
$a = int( 4 / 3 ); ← $a には 1 がセットされます。
■ ランダムな数値
ランダムな数値を作る場合は、rand 関数を使います。 → rand 関数リファレンス [書式] rand 式rand 関数は 0 から式の値までの数値をランダムに返します。 式を設定しない場合には、1 の値が設定されます。 ■ おみくじを作ってみよう!
比較演算子や rand 関数を使って簡単なおみくじプログラムを作って見ましょう。 rand 関数を使って、さいころの1〜6までの目をランダムに作成して、出た目によって「大吉」 や 「吉」 などのメッセージを表示します。 では、早速作って見ましょう。
$number = int( rand 6 ) + 1; ← さいころの目を作ります
さいころの目($number) を作る際には、rand 関数で作成された数値に1を足して作っています。if ( $number == 1 ) { ← さいころの目が1の場合 print "おめでとう!今日は最高の1日になるでしょう。 大吉です。"; } elsif ( $number == 2 ) { ← さいころの目が2の場合 print "なかなかですな! 中吉です。"; } elsif ( $number == 3 ) { ← さいころの目が3の場合 print "今日の運勢はぼちぼちです。 小吉です。"; } elsif ( $number == 4 ) { ← さいころの目が4の場合 print "まあまあじゃないですか。 小吉です。"; } elsif ( $number == 5 ) { ← さいころの目が5の場合 print "あんまり出歩かない方がいいかも。 凶です。"; else { ← さいころの目が6の場合 print "今日の運勢は最悪! 大凶です。"; } rand 関数では0からの乱数を作成する為、1〜6までのさいころの目を作る際には1を足しています。 あとは、作製されたさいころの目の数によって、表示するメッセージを変えています。
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||