簡単なプログラムを作った #1

1以下、名無しにかわりましてVIPがお送りします:2016/07/04(月) 23:55:21.99 ID:h/vo9197

#単位の選択
print"温度の単位(数字)を選択して下さい\n";
print"ケルビン=1 摂氏=2 華氏=3:"; $u = <STDIN>;
print"\n";

#単位の繰り返し(無効な場合)
while($u < 1 || $u > 3){
print"無効な値なのでもう一度入力して下さい\n";
print"ケルビン=1 摂氏=2 華氏=3:"; $u = <STDIN>;
print"\n";
}

#単位の表示
if($u == 1){
$d = "ケルビン";
}elsif($u == 2){
$d = "摂氏";
}elsif($u == 3){
$d = "華氏";
}

#温度の入力
print"温度を入力して下さい(単位:$d):"; $t = <STDIN>;
print"\n";

#温度の繰り返し(無効な場合)
while($u == 1 and $t < 0){
print"無効な値なのでもう一度入力して下さい\n";
print"温度を入力して下さい(単位:$d):"; $t = <STDIN>;
print"\n";
}
while($u == 2 and $t < -273.15){
print"無効な値なのでもう一度入力して下さい\n";
print"温度を入力して下さい(単位:$d):"; $t = <STDIN>;
print"\n";
}
while($u == 3 and $t < -459.67){
print"無効な値なのでもう一度入力して下さい\n";
print"温度を入力して下さい(単位:$d):"; $t = <STDIN>;
print"\n";
}

#温度の変換
if($u == 1){
$k = $t;
$c = $t - 273.15;
$f = (9 / 5) * $t -459.67;
}elsif($u == 2){
$k = $t + 273.15;
$c = $t;
$f = (9 / 5) * $t + 32;
}elsif($u == 3){
$k = (5 / 9) * ($t + 459.67);
$c = (5 / 9) * ($t - 32);
$f = $t;
}

#値の整理
$k = sprintf("%.2f", $k);
$c = sprintf("%.2f", $c);
$f = sprintf("%.2f", $f);

#温度の表示
if($u == 1){
print"絶対温度$k"."Kの場合\n";
print"摂氏温度$c"."°Cと華氏温度$f"."°Fになります\n";
}elsif($u == 2){
print"摂氏温度$c"."°Cの場合\n";
print"絶対温度$k"."Kと華氏温度$f"."°Fになります\n";
}elsif($u == 3){
print"華氏温度$f"."°Fの場合\n";
print"絶対温度$k"."Kと摂氏温度$c"."°Cになります\n";
}

このスレッドを全て表示


このスレッドは過去ログです。