小数点以下の四捨五入について - Printable Version +- Curl Global Community (https://communities.curl.com) +-- Forum: Discussions (https://communities.curl.com/forumdisplay.php?fid=1) +--- Forum: General Curl questions (https://communities.curl.com/forumdisplay.php?fid=2) +--- Thread: 小数点以下の四捨五入について (/showthread.php?tid=634) |
小数点以下の四捨五入について - okm - 09-26-2012 こんにちは。 現在、小数点以下の桁数をそろえたくて、formatマクロを利用しているのですが、 例えば {format "%.3f", val} として小数点以下3桁指定の場合、 1.6555 と入力したら 1.655 と切り捨てられてしまいますよね。 これを単純に四捨五入でformatして、 1.656 としたいのですが、どういった方法がありますでしょうか? roundマクロを使うと整数になってしまいますよね。。 {format "%.3f", {round {"1.6555".to-double}}} → 2.000 なにか方法はありませんでしょうか? よろしくお願いいたします。 RE: 小数点以下の四捨五入について - usami - 09-27-2012 roundは整数の丸めなので、一度整数にして丸めた後、戻せばよいかと思います。 しかしこの場合でもroundは不具合があるので、下記URLを参照に0.5fを足せばよいでしょう。 {format "%.3f", {round {"1.6555".to-double} * 10000 + 0.5f} / 10000} 参照URL http://developers.curlap.com/faq/48-faq-specification/396-2010-10-19-07-48-58.html RE: 小数点以下の四捨五入について - okm - 09-27-2012 usamiさま 既出だったのですね、すみませんでした。 ありがとうございます! |