- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
191 :デフォルトの名無しさん[sage]:2016/08/05(金) 03:39:17.62 ID:WxI1qvCL - よく知らないんだが、doubleだと0.1を10回足しても1にならないって聞いたんだけど
doubleで問題ないって人は、0.1を10回足して結果表示するコード書いてみてほしい 必要な桁数の精度は整数部2桁、小数部2桁で4桁もあればいいから
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
203 :デフォルトの名無しさん[sage]:2016/08/05(金) 12:59:22.80 ID:WxI1qvCL - >>192,201
たしかに必要な精度が4桁で良いって前提なら問題ないように見えるけど 誤差は累積しないのか? たとえば0.1を10回たして1.0を引く処理を1000万回ぐらい繰り返しても問題ないのか? それともその場合はあえてdecimalを使わなきゃならない場面なのか?
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
206 :デフォルトの名無しさん[sage]:2016/08/05(金) 15:56:50.82 ID:WxI1qvCL - >>204
>>136は、累積誤差が必要な桁数を超えない限り問題ないって書いてあるだけだろ 聞きたいのは、ほとんどの状況でdoubleでOKだって言ってる人に じゃあどういう状況がdouble不可なんだって事 誤差がどの程度累積するかなんて、正確に見積もれるのか? doubleとdecimalでどんだけ速度差あるのかも良くわからん 基本、適材適所なのはその通りだけど 速度(とメモリ)に問題なければ基本decimalでOKって考え方の方が安全だと思うんだがな
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
210 :デフォルトの名無しさん[sage]:2016/08/05(金) 16:27:24.03 ID:WxI1qvCL - >>209
1回の誤差は実行される式の値でわかるとしても 毎回同じ値の計算しかしないとでも? 何回実行されるかわからなくてもどれだけ累積するか見積もれると?
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
213 :デフォルトの名無しさん[sage]:2016/08/05(金) 16:49:27.59 ID:WxI1qvCL - >>212
安全な回数を実行回数が超えるような場合でもdoubleでOKなの?その場合はdouble不可なの? 乗除でどの程度の誤差が発生するかも事前に計算できるの? 安全な回数がわかったとして、実行回数がそれを超えるかどうかはどう見積もるの? 基本doubleでOKだって言うのは、毎回その安全な回数と予測実行回数を算出してるの? それとも体感上とか経験上とか、あるいは何の根拠も無く安全な回数を超えないと思ってるだけなの?
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
217 :デフォルトの名無しさん[sage]:2016/08/05(金) 17:31:35.93 ID:WxI1qvCL - >>215
だからその途中で丸める必要性の有無やタイミングを正確に把握できないのに 基本doubleでOKだってのにどういう根拠があるの?って聞いてるんだが
|
- C#, C♯, C#相談室 Part91 [無断転載禁止]©2ch.net
222 :デフォルトの名無しさん[sage]:2016/08/05(金) 18:32:40.21 ID:WxI1qvCL - 正確に把握できないものの安全を確証できるのか
確かに俺には理解できんわ つまり、基本dobleでOKってのは、安全を確証できるならdoubleでOkってことでいいのかね どうやって安全を確証してるのかは俺にはわからんけど
|