- ベストアンサー
C#.netでの切り上げ処理について
C#.netでの切り上げ処理について C#.netでの切り上げ処理について質問です。 ある値を百単位で切上げを行いたいのですが、どのようにすればよいでしょうか? 例)「1040」→「1100」 「60」 →「100」 値は必ずint値になります。 小数の切上げの場合、Ceiling メソッドを使用するのは分かるのですが… よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
using System; namespace Q5665606 { class MainClass { public static void Main (string[] args) { //Plan A int x; int y; x= 60; y = (int)(System.Math.Ceiling((double)x / 100) * 100); System.Console.WriteLine(y); //Plan B 浮動小数点数の誤差が心配な場合 y = x / 100 * 100 + (x % 100 > 0 ? 100: 0); System.Console.WriteLine(y); return; } } }
その他の回答 (2)
- smcss
- ベストアンサー率63% (7/11)
1040 % 100 で余りが出ます。余りが10以上なら +100 してその余りを引けばいいのでは。 余り = 1040 % 100; if (余り>=10) { 求める値 = 1040 - 余り + 100 } 余りが 10 未満の場合はどうするのか不明ですが 切り捨てなら単に余りを引くだけです。
お礼
ありがとうございます! 参考にさせて頂きます。
- nza49739
- ベストアンサー率46% (29/62)
どっかの質問と同じ答えですが、 a += ( 100 - a % 100 ) % 100 ; 2桁目を見て判断しなくてはいけない場合は、これは対応できませんが。
お礼
ありがとうございます! 参考にさせて頂きます。
お礼
ありがとうございます! 参考にさせて頂きます。