■ このスレッドは過去ログ倉庫に格納されています
俺「0.1+0.2=0.3だろ」Javasprict「違います」
- 1 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:08:33.40 ID:CCwlASUF0.net
- Java「0.1+0.2=0.30000000000000004です」
キチガイかこいつ
- 2 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:08:57.10 ID:m3DnQU5ua.net
- こま?
- 3 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:09:02.22 ID:isek8peH0.net
- 0.1じゃないからしゃーない
- 4 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:09:03.73 ID:DXYeo7Nl0.net
- はえープログラムの人ってちょっと変
- 5 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:09:17.20 ID:H8Io4bJk0.net
- しゃーない
- 6 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:09:36.38 ID:qwBkuMha0.net
- ほーん
コンピュータの人間超えはなさそうやね
- 7 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:10:04.26 ID:Hcl4umo/a.net
- どうしてそうなるんや
- 8 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:10:08.05 ID:PH0Hww9ka.net
- 浮動小数点?
- 9 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:10:32.95 ID:rGOhxiQc0.net
- スクリプトやで
- 10 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:10:44.69 ID:KocNo+8R0.net
- >>6
プログラムやぞ?
- 11 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:10:52.80 ID:JcaJ7rVm0.net
- すまんがJavaappletって何ンゴ?
- 12 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:10:58.50 ID:isek8peH0.net
- >>7
0.1とかも0.1に近い近似であって0.1ではないから
- 13 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:11:20.65 ID:4puwb8GM0.net
- >>6
はえーなんでコンピュータの話になるんやろか
- 14 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:11:21.77 ID:UDKA8MJF0.net
- javascript:alert(0.1+0.2)
↑をコピーしてIEとかのアドレスバーに張り付けてエンター
- 15 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:11:44.08 ID:1p+JYOSk0.net
- 切り捨てしてやらなあかんてこと?
- 16 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:12:29.77 ID:Jr7gFHjO0.net
- >>12
丸が四角の塊みたいなもんか
- 17 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:12:40.60 ID:wZT9B7N90.net
- 浮動小数点演算について勉強するといいよ
- 18 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:13:04.65 ID:895hVGJl0.net
- >>17
いや分かってるやろ
- 19 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:13:19.28 ID:xIaCm6Vu0.net
- javaとjavascriptは別人
- 20 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:13:45.02 ID:abJYhnPz0.net
- 2進数やとこうなるCOBOLは10進数やから銀行で使われる
- 21 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:13:48.26 ID:Hcl4umo/a.net
- >>12
はえ〜なるほど
つまり現代のコンピューターの性質で、数値を2進数、つまり2の階乗の和で表現しようとするためです。
例えば0.5は簡単ですね。2-1です。また0.25は2-2ですから、0.75は2-1+2-2という事になります。
ちなみにJavaScriptで階乗を扱う場合はMath.pow()です。
1
console.log(Math.pow(2, -1)); // => 0.5
2
console.log(Math.pow(2, -2)); // => 0.25
3
console.log(Math.pow(2, -1) + Math.pow(2, -2)); // => 0.75
それでは0.1はどう表せば良いでしょうか?
1
console.log(0.1.toString(2)); // => "0.0001100110011001100110011001100110011001100110011001101"
おわかり頂けるでしょうか、これ、循環小数になります。10進数でいうところの1/3 = 0.33333333…みたいなやつです。
ですので、0.1は2進数の世界に生きるコンピューターでは正確に扱う事ができません。なので近似値で扱うのですが、実際の数値とはちょっとだけずれているので、計算を行うと変な結果になってしまったりするわけなんやな
- 22 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:13:58.92 ID:Z+q8cTfA0.net
- まーた理系のアホがマジレスしてるのか(呆れ)
- 23 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:13:59.47 ID:c5eXFsd00.net
- >>19
???「なんか流行ってるから名前につけたろ!」
- 24 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:14:18.05 ID:IDlvf2i2a.net
- >>21
そのまま引用ニキ
- 25 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:14:24.08 ID:XGk7vlL60.net
- 2進数最大の弱点
- 26 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:15:29.19 ID:YMpwzU77d.net
- >>21
草
- 27 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:16:07.90 ID:N6my5IK80.net
- スプリクト定期
- 28 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:17:06.81 ID:KocNo+8R0.net
- >>27
kwsk
- 29 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:17:09.30 ID:Hcl4umo/a.net
- はえ〜COBOLって10進数なんや
昔見た教科書にはCOBOLは数字に強いから銀行に使われるくらいの説明しか書いてなかったけどその説明も欲しかったなあ
- 30 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:17:28.90 ID:TyPQIDIr0.net
- 全然知らんけどコンピュータに10進法使わせたら問題解決するんちゃうの?
- 31 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:17:55.23 ID:abJYhnPz0.net
- どうしても計算したいなら整数にしてから少数にするといお
- 32 :風吹けば名無し@\(^o^)/:2016/09/27(火) 03:18:57.55 ID:KocNo+8R0.net
- >>30
そこはプログラマーの腕の見せどころ
総レス数 32
6 KB
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★