© 2005 Martin J. Dürst 青山学院大学
# perl program to calculate BMI # input $name = shift; $weight = shift; $height = shift;
# calculation $bmi = $weight / $height ** 2; # output print "$name, your bmi is: $bmi\n", "for a weight of $weight kg\n", "and a height of $height m\n";
$変数名 = 値・演算式
と書きます
$変数名
だけ書けばよいBMI の値は計算できますが、それによっての区分は判定できない。
BMI の値によって違う処理をしたい。
枝分かれの文が必要。
下限 | 上限 | Category | 判定 |
18.4 | underweight | 軽すぎ | |
18.5 | 24.9 | normal weight | 普通 |
25.0 | 29.9 | overweight | 重すぎ |
30.0 | obesity | 肥満 |
if
文の構造if
文の例:
if ($bmi < 18.5) { print "underweight"; }
if
文の基本構造:
if (
条件) {
その条件の時の処理
}
if
文の意味{}
内の処理を実行するif
文の次に進む)if
文の書き方{}
を付ける{}
内の文を字下げする<
, >
, <=
,
>=
, ==
, !=
(等しくない)lt
, gt
, le
, ge
,
eq
, ne
0
は偽、他の値は真として扱われている。""
)
は偽、文字のある文字列は真かつ: &&
又は and
:
両方が真でないと条件全体は真にならない。例:
if (18.5 <= $bmi && $bmi < 25) { print "normal weight"; }
又は: ||
又は or
:
どちらかが真でしたら条件全体が真。例:
if ($bmi < 18.5 || 25 >= $bmi) { print "take care of your weight"; }
if
文の拡張:
if
-elsif
-else
文目的: 複数の選択から一つだけを選ぶ
if
-elsif
-else
文の構造:
if (
条件1) {
条件1 の時の処理
条件2
} elsif () {
条件2 (かつ条件1 でない) 時の処理
} else{
条件1 と条件2 以外の時の処理
}
if
-elsif
-else
文の例if ($bmi < 18.5) { $advice = "eat more"; } elsif ($bmi < 25) { $advice = "keep your weight"; } elsif ($bim < 30) { $advice = "eat less"; } else { $advice = "eat much, much less"; }
使用料 r (m3/月) | 基本料金 | 単位料金 |
0 < r ≤ 20 | 724.50 円 | 130.28 円 |
20 < r ≤ 80 | 1,083.60 円 | 112.32 円 |
80 < r ≤ 200 | 1,365.00 円 | 108.81 円 |
200 < r ≤ 500 | 2,499.00 円 | 103.14 円 |
500 < r ≤ 800 | 5,806.50 円 | 96.52 円 |
800 < r | 13,786.50 円 | 86.55 円 |