June 02, 2005
perl プログラムの質問です。
行末セミコロン必須でおながいします。
まぁ、細いことはいいとして (良くないけど) レスがついてらっしゃる…。
…ということで、末尾の「正規表現でも良いですけど。」を受けまして、正規表現でいきませう。
こんなやりかたで解決しようだなんて、とってもオバカみたいだね。。。
普通にやるなら
はじめまして perlプログラミング初歩的な質問です。或る日の referer にこのページがあった。
まず下の例を見てください。
$te = 150000 * 0.0055
$te1 = te * 12
$te3 = 150000 + $te1
$te4 = te3 / 12
↑このまま計算してしまうと $te4は 13325 となりますが、
ここで質問です。 この 13325 下2ケタを切捨てしたいのですが
13300にしたいのですが、どういうプログラムになるのでしょうか?
簡単にいえば 下2ケタを切捨てする処理方法(命令)を教えてもらいたいのですが よろしければ 教えてくださいm(__)m
よろしくお願いします。
行末セミコロン必須でおながいします。
まぁ、細いことはいいとして (良くないけど) レスがついてらっしゃる…。
http://blog.livedoor.jp/nipotan/archives/18935329.htmlオッチョンジ なんでこんなとこに誘導するかなぁ…。
ここを参考にしてみてください。
但し小数点を自分で作る必要があります。
$te4/100
で、切捨て後に最後に元の桁になるように掛ける、と。
$te4*100
正規表現でも良いですけど。
…ということで、末尾の「正規表現でも良いですけど。」を受けまして、正規表現でいきませう。
$te4 =~
s{^([-+]?)((\d*?)(?:\d\d)?)(?:\.\d+)?$}
{length $2 >= 3 ? $1 . $3 . '00' : '0'}ee;
うーむ。こんなやりかたで解決しようだなんて、とってもオバカみたいだね。。。
普通にやるなら
$te4 = $te4 - $te4 % 100;で。。。