数字の桁数揃え
では最後に、長すぎる数字を丸めて表示する方法を覚えておきましょう。"僕は1.01533150573662 ドル持ってるんだ!"こんなことをいつも言っていると太郎君はお友達に嫌われてしまいます。せめて小数点2桁くらいにしてあげましょう。
この場合は、printf という、最後にエフが付いている文を使います。
printf (' "僕は%.2fドル持ってるんだ!" ', $usd_per_yen);printf 文では、出力に 「%.2f」 というキーワードを含めておくと、そこに、後の変数の中身が四捨五入されて表示されます。キーワードの中の数字(この場合「2」)が小数点以下の桁数を表します。
出力は、以下のようになります。
"僕は1.02ドル持ってるんだ!"
まとめ
この記事では、以下の事を覚えました。- 文字のエスケープと変数展開を無効にする方法 - 「$」や「\」を表示
- クオートの代替記法- 「"」や「'」を出力する
- 空白の出力方法 - 変数名の指定、改行を直接入力する
- 数字の桁数揃え - printf での四捨五入
以下の例では、出力を表組風に書き換えてみました。
#kawase.pl #為替レートから100円でいくらになるかを計算する #表示桁数改善 #出力改善 use strict; use warnings; use utf8; #為替レートを設定(1ドル〇〇円の値)。 my $kawase_usd = 99.18; #計算 my $usd_per_yen = 1 / $kawase_usd * 100; #100円なら何ドル? #出力 binmode STDOUT, ':encoding(utf8)'; #Windowsは utf8->cp932 print '出力はご自分で確かめてみて下さい。
===================
今日の為替
===================
';
print "1 US\$ = $kawase_usd 円\n";
printf ('100円 = %.2f US$', $usd_per_yen);
print "\n\n";