プログラミングできる人きて

■ このスレッドは過去ログ倉庫に格納されています
1以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:08:46.284ID:jb+P/RBC0
全然分からんで困ってるんだが

2以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:08:55.166ID:Irbq695vM
自己解決しました

3以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:09:12.046ID:jb+P/RBC0
まあまてや

4以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:09:35.379ID:0BqZHdEP0
言語かけ

5以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:09:48.345ID:jb+P/RBC0
doubleの比較で
0.1+0.2==0.3 →false
なのは分かったんだが

じゃあ
1.1+1.2==2.3 →true
これはなんでなん?

6以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:10:23.659ID:jb+P/RBC0
>>4
言語はc#だけど他でも多分ある問題?

7以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:11:26.784ID:dhpQN2Zj0
>>5
浮動小数点のイコールなんて使ってる奴は雑魚

8以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:11:41.394ID:0BqZHdEP0
ルビーではダブルなんて使わない頑張れ

9以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:11:48.646ID:jb+P/RBC0
なんか小数点以下は2進数と10進数の変換がうまく行かん話な

10以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:12:28.532ID:jb+P/RBC0
>>7
雑魚なのは調べて分かったが
2つの違いが分からん

11以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:12:58.585ID:jb+P/RBC0
>>8
そんなあ

12以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:13:39.342ID:jb+P/RBC0
大先生いないんか?

13以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:15:23.438ID:8QV3zhXGd
浮動小数点数をもう少し勉強した方がいいぞ
数学的な意味の1.1と浮動小数点数の1.1は
厳密に言うと違うからな

14以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:16:31.181ID:dhpQN2Zj0
>>10
そもそもやっちゃ駄目だから気にする必要なし
1.0(変数)==1.0(変数)もデバッカで見ると片方が0.999999みたいになっててイコールにならんで
なんでかは知らん

15以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:17:34.828ID:jb+P/RBC0
>>13
2進数で表現できねー部分があるって事だろ?
1は1だからいいとして小数点以下の部分同じなのに違うから何でかなと

16以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:19:28.096ID:jb+P/RBC0
>>14
ほーん気にするな、が答えか
丸めたりなんやらで比較はするけどイマイチ気になるな

17以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:20:43.876ID:nAns2deW0
>1は1だからいいとして

よくねえよ
浮動小数点の内部表現について調べろ

18以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:22:10.053ID:FVeR751d0
浮動小数点数の演算(誤差)に関してはいくらでも長い説明が存在する
代表的な資料としてはWhat Every Computer Scientist Should Know About Floating-Point Arithmetic

19以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:22:15.054ID:8QV3zhXGd
>>15
いやいやだからさぁ…
まずは浮動小数点数がどうやって
細かい数字を表現してるのか調べようよ…
そんなんすぐ答え出てくるじゃん…

20以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:23:57.830ID:jb+P/RBC0
おー大先生いっぱい来た
それっぽいサイト調べるわサンキュー

21以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:27:08.763ID:FVeR751d0
小数の正確な比較がしたかったらDecimal型のようなものを使うこと

22以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:48:52.526
浮動小数点がデータとしてどう表されてるかは基本情報で勉強しただろ!

23以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:49:08.876ID:mEcoi2bKH
きょうのけちんぼ

24以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 19:55:15.929ID:P+Cwg+Py0
2進数で指数と真数を計算するから
誤差が出る場合と出ない場合がある

25以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 20:14:19.508ID:FVeR751d0
浮動小数点数の誤差についてググったら具体的な内部表現に踏み込まない虚無の解説群がヒットして感動した

26以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 20:15:34.983ID:P+Cwg+Py0
んじゃ
内部に踏み込んで書いとくか

doubleは2進数の先頭の1から53桁で表すから

0.00011001100...11001 (2) = 0.1
0.0011001100...11001 (2) = 0.2
--
0.010011001...10010[11] (2) = 0.1+0.2
0.010011001...10011 (2) = 0.3
(誤差が出る)

1.000110011...0011001 (2) = 1.1
1.001100110...0110011 (2) = 1.2
--
10.010011001...100110[0] (2) = 1.1+1.2
10.010011001...100110 (2) = 2.3
(誤差が出ない)

27以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 20:16:33.703ID:mEcoi2bKH
今日はけちんぼじゃない!

28以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 21:01:05.417ID:ewVUQvnM0
>>6
==比較やるならdecimal型使えよ

29以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 21:13:39.763ID:jb+P/RBC0
まだあったか
けちんぼしないで書いてくれたヤツサンキューな

30以下、5ちゃんねるからVIPがお送りします2018/11/15(木) 21:53:59.246ID:a0yRlcTFM
これは良いスレ

■ このスレッドは過去ログ倉庫に格納されています