|
>>2938 初心者 この書き方は出来るのかな??複数行にわたるクオート setenv PATH "/usr/sbin:/bin:$NCARG_ROOT/bin :/home/hongbin/fdgrib1.0/src/pre/fdgrib:/home/hongbin/rams4.3 :/home/hongbin/rams4.3/chq1/plvrams:$PATH" |
|
>>2937 ふくし 勘定系ってやっぱり BCD だったりするんだろうかと思いつつ、 こういうときの常套手段を知らないので、しばし傍観。 >>2938 初心者 csh -fv .cshrc しましょう。あるいは、1行ずつ手でタイプ (あるいはマウスでコピペ) しましょう。どこに問題があるのか わかります。 |
|
>>2940 名無し さん、ありがとうございます。 sprintf は四捨五入なんですね。 ということはあらかじめ 0.005 を引いておけばよい? −−−−−−−−−−プログラム−−−−−−−−−−−−−−>8 #! perl while (<DATA>) { chomp; $tanka = $_; # ドル print "tanka = $tanka "; $tanka -= 0.005; # 切り捨てたいから $kosuu = 1; # 個 $uriage100 = $tanka * $kosuu * 100; # 売上の 100 倍 $uriage = $uriage100 / 100; $uriage = sprintf "%.2f", $uriage; print "uriage = $uriage\n"; } −−−−−−−−−−プログラム終わり−−−−−−−−−−−>8 実行結果。 > keisan tanka = 10000.88 uriage = 10000.88 tanka = 10000.881 uriage = 10000.88 tanka = 10000.882 uriage = 10000.88 tanka = 10000.883 uriage = 10000.88 tanka = 10000.884 uriage = 10000.88 tanka = 10000.885 uriage = 10000.88 tanka = 10000.886 uriage = 10000.88 tanka = 10000.887 uriage = 10000.88 tanka = 10000.888 uriage = 10000.88 tanka = 10000.889 uriage = 10000.88 なんかできてるっぽい、、? __DATA__ 10000.88 10000.881 10000.882 10000.883 10000.884 10000.885 10000.886 10000.887 10000.888 10000.889 |
|
>>2942 ふくし これなんかどうでしょうね。 http://www.harukaze.net/~mishima/perl/faq/newbiefaqpgm.html#5 > $uriage = $uriage100 / 100; 最後に 100 で割るのがなんかおそろしいなぁ。 値によっては循環小数になったりしないのかな。循環小数になっても %.2f してるから OK? |