TEDIA会員に登録したメールアドレスとパスワードを入力してください

メールアドレス:

     パスワード:


パスワードを忘れた方はパスワードの確認を行ってください。

TEDIA会員へのご登録がお済みで無い方はこちらで登録ができます


>> テクノロジーポータル TEDIA トップページへ戻る <<

Think IT Software Developer's Think IT Find-IT 失敗しないソフト選び Find-IT TEDIA テクノロジーポータル TEDIA インストールマニアックス2008 インストールマニアックス2008

TEDIA SponsorsOpen Source Web Development Tutorials - Dev Shed

Perl入門:条件文
(2009/02/25公開)

いいか、さもないと!

 著名な作家は、その豊かさの一環として周囲の人々を支配する。1日に何度と無く、周囲の雇い人をしかりつけて、あわてさせる。[いいだろう、夢を見ていろ-エド]。してほしいことをしなかった場合、筆者は彼らにIf文とElse節を与える。


#!/usr/bin/perl

$do_my_bidding = 'Yes Master!';

if ($do_my_bidding = 'Yes Master!'

{
print "You are a good slave. Tell your mother I will see her tonight";
}
else
{
print "You ignorant buffoon! Tell your mother I will see her on my lunch break!";

print "Get out of my sight!";



 上のコードでは、$do_my_biddingに値「Yes Master!」が格納され、次の結果が出力される。


 You are a good slave. Tell your mother I will see her tonight.
 Get out of my sight!



$do_my_biddingにほかの値が格納された場合、出力は次のようになる。


 You ignorant buffoon! Tell your mother I will see her on my lunch break!
 Get out of my sight!



 「Get out of my sight!」はどちらの条件にも含まれていないから、条件に関係なく出力される。

Elsif

 Else節が1つだけでは不足することがある。そのような場合にはElseifを使用すると便利だ。下の例を見てほしい。


#!/usr/bin/perl

$do_my_bidding = 'Yes Master!';
{
print "You are a good slave. Tell your mother I will see her tonight";
}
elsif ($do_my_bidding = 'No')
print "Insolent swine! Tell your mother to come right now!";
else
{
print "You ignorant buffoon! Tell your mother I will see her on my lunch break!";

print "Get out of my sight!";



 上のコードでも、$do_my_biddingの値が「Yes Master!」の場合は、前の例のように出力される。


 You are a good slave. Tell your mother I will see her tonight.
 Get out of my sight!



 ただ、このコードでは、$do_my_biddingの値が「No」の場合は、次のように画面に出力される。


 Insolent swine! Tell your mother to come right now!
 Get out of my sight!



 また、$do_my_biddingの値がいずれでもない場合は、次のように出力される。


 You ignorant buffoon! Tell your mother I will see her on my lunch break!
 Get out of my sight!



 次の2つのことに気が付いただろう...1) 「Get out of my sight!」は条件文の外側にあるため常に出力される。 2) どのように返答しても、結果は同じ。いつ、そうするかだけの問題だ。


前のページ     1    2    3    4    次のページ

Copyright © 2008 Ziff Davis Enterprise, Inc.
Originally appearing in the U.S. Edition of Dev Shed. All Rights Reserved.