- ベストアンサー
四捨五入について
"1.005"を小数点第三位で四捨五入して、"1.01"にしたいのですが、 "Math.round(1.005*100)/100"だと1.005*100が100.4999999999998になってしまい、結果的に"1.00"が返されてしまいます。何か良い解決方法はないでしょうか?
- purton
- お礼率63% (55/87)
- JavaScript
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
var n = 1.005; として、 var s = String(n); var ans = (parseInt(n*100)+((Number(s.charAt((s+".").indexOf(".")+3))>4)?1:0))/100; なんか思い切りかっこ悪いんですけど(^^;
関連するQ&A
- 四捨五入、簡単そうで、出来ません・・・
お世話になります。 さて、 18643.52 この数字を、まず、小数点を四捨五入して 18644 とします。 次に、 18644の数字を、四捨五入して、 18640 としたいです。 一気に、18643.52 から 18640 とする方法は ありますか? 教えて下さい。
- ベストアンサー
- オフィス系ソフト
- 四捨五入、丸め・・・?
たとえば、235.4を小数点第一位で「四捨五入」すると、236ですよね。 334を330に、336を340にするような場合は、なにか言い方がありますか? わかりにくくてすみません。
- ベストアンサー
- 数学・算数
- Access2000 小数第3位で四捨五入
質問させていただきます。 Access2000で以下の計算式を作りました。 金額 = Round(重量 × 単価,2) これは「金額」を小数第3位で四捨五入します。 ところが以下の数値の場合、正しく計算してくれません。 764.00 = 0.479 × 1595 本当は 764.005 だから 小数第3位で四捨五入すると 764.01 になると思うのですが・・・。 ちなみに以下の値では・・・ 754.44 = 0.473 × 1595 (754.435だから小数第3位で正しく四捨五入されています)。 やり方が悪いのでしょうか?それとも他に正しく計算できる方法があるのでしょうか?
- ベストアンサー
- オフィス系ソフト
- エクセルの四捨五入
エクセルについて質問させて下さい。 エクセルで下記式を入力したところ、返された答えが「3」となりました。 「3.5」の小数点第1位を四捨五入なので「4」となるべきところなのにです。 理由が分かる方いましたら是非教えて下さい。 =ROUND((1.035-1)*100,0)
- ベストアンサー
- Excel(エクセル)
- 四捨五入について質問があります
割合0.5135を小数点以下第一位に四捨五入すると、51%になるみたいなのですが、この時小数第一位である5を四捨五入すると思うのですが、何故51%になるのでしょうか?5は繰り上がって一の位に行くと思うのですが、、
- 締切済み
- 数学・算数
- 範囲指定した箇所の数値を一括で四捨五入したい
EXCELのマクロで 範囲指定をしたセルの数値(数式ではなく、数字です)を一括で四捨五入(小数点第3位を四捨五入(小数点第2まで表示))した数値を置き換えるマクロを知りたいのですが、調べられずに困っています。 (roundで四捨五入して、それを値だけ貼り付ければ・・と言うことではなく、あくまでもマクロでの方法を教えてください) よろしくお願いいたします。 バージョンEXCEL2000
- ベストアンサー
- オフィス系ソフト
お礼
いやいやいや、とんでもないです。 こういうやり方もあるんだなと、勉強になりました。 ありがとうございました。