四捨五入について質問です。
GUIアプリのエディットコントロール画面から、任意の数値を入力させ、
小数点以下n桁で四捨五入をさせたいと考えています。
しかし、なかなかうまくいかないのが現状です。
試したのは以下の通りです。
・atofを用い、数値を取り込み、下位n桁目を四捨五入 -> 当然だめです
・atoiを用い、数値を取り込み、10^nをかけて整数値にしてから四捨五入 -> 0.05と0.0499...の違いがつけられない
やはり文字列処理しかないのでしょうか?
(文字列を取り込み、小数点以下n文字目が5以上かどうかで判定、のような・・・)
もしよろしければ、皆さんのお知恵をお貸しください。
No.4ベストアンサー
- 回答日時:
すばらしいHPのご紹介、ありがとうございます。
浮動小数点の誤差に起因する問題についてはソ開くらいまでなら認識していましたが、
具体的に集中的に集められたHPで、よりいっそう知識が深まった気がします。
結局、文字列取り込みのところは、小数点以下n+1桁以下を削除する取り込みを行い、
あとはNo2の方もおっしゃっていたように、整数値にあげてから切り捨ててうまくいきました。
No.1
- 回答日時:
四捨五入は施したい桁に5を加えてその桁以下を切り捨てればいいのですが、それではまずいのでしょうか?
この回答への補足
ご回答ありがとうございます。
よく考えると、躓いているのって文字列の取り込みのところでした。
0.1235
と
0.1234999999999999999999999999999999999999999
を同じようにatofで取り込んでいたので、
取り込んだ後、どっちも同じ数と認識されていたようです。
うーん。
ありがとうございました。
結局、文字列取り込みのところは、小数点以下n+1桁以下を削除する取り込みを行い、
あとはNo2の方もおっしゃっていたように、整数値にあげてから切り捨ててうまくいきました。
ちなみに、0.205を小数点第三位で四捨五入する時、No1がおっしゃられた方法だと桁下がりになります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 教育学 エクセルで小数点以下を四捨五入について教えてください。 2 2023/04/05 17:33
- Excel(エクセル) エクセルのセルの書式設定・ユーザー定義の条件設定について 1 2022/08/17 21:56
- 小学校 がい数の問題の文章の意味 4 2022/11/21 14:25
- 化学 課題を理解したいので教えてください なるはやでお願いします( . .)" 100 mL の溶液中に 1 2023/05/08 23:12
- 統計学 統計学の問題 1 2022/10/09 20:01
- 数学 小数点の計算についてです。 答えは与えられた数字の中で最も少ない桁に四捨五入で合わせるのですが、ひと 2 2023/04/04 15:19
- 統計学 155.2、164.4といった数字で平均値を出す場合は、その数字を四捨五入で整数にしてから÷個数で求 13 2022/10/12 16:12
- 数学 昔の日本人の身長表記の尺や海外の身長表記のフィートはcmに直すと小数点がつきますが、その小数点はフィ 2 2022/04/12 21:26
- 統計学 教えてください! あるくじ引きには5枚に1枚の割合でアタリが入っていると宣伝しているが、実際には20 7 2023/05/29 09:10
- 数学 数学『データの分析』 √22を少数にする際 「4.6904…」だったので 4を四捨五入し0を切り捨て 2 2023/03/09 23:30
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
COBOLの計算方法
-
勤務の稼働時間の計算がわかり...
-
端数処理における「小数以下」...
-
5%割引の際の、小数点以下の扱...
-
Excel有効数字の丸め方「0捨1入」
-
Access 1000以下を切り捨てる関数
-
エクセルでの小数点以下切り捨...
-
MATLABで小数を整数にするには?
-
今投稿して解決したのですが 更...
-
駐車場賃料の日割り計算について
-
数字の下二桁を削除したい
-
SwiftのDouble型の四捨五入につ...
-
負の数の四捨五入の方法
-
数字の double 型 を int型...
-
50銭以下切り捨て51銭以上切...
-
なぜ消費税10%は×1.1なのですか...
-
高速料金を請求する場合の消費...
-
家電リサイクル料金と消費税
-
法人税・消費税修正申告納付の仕訳
-
協同組合に支払う会費&賦課金...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
右ビットシフト
-
5%割引の際の、小数点以下の扱...
-
今投稿して解決したのですが 更...
-
Access 1000以下を切り捨てる関数
-
駐車場賃料の日割り計算について
-
COBOLの計算方法
-
数字の下二桁を削除したい
-
Excel有効数字の丸め方「0捨1入」
-
負の数の四捨五入の方法
-
エクセルでの小数点以下切り捨...
-
数字の double 型 を int型...
-
50銭以下切り捨て51銭以上切...
-
端数処理における「小数以下」...
-
勤務の稼働時間の計算がわかり...
-
雇用保険料の計算式について(E...
-
小数点 第n位 を切り上げ,切り捨て
-
四捨五入をするプログラムの書...
-
「未満と以上」使う範囲。
-
切捨てする関数はありますか?
-
四捨五入できますか?
おすすめ情報