Von Kindheit an wurde uns beigebracht, dass 0,1 + 0,2 gleich 0,3 ist. In der mysteriösen Computerwelt funktionieren die Dinge jedoch anders. Ich habe kürzlich angefangen, JavaScript-Code zu schreiben, und beim Lesen über Datentypen bemerkte ich ein seltsames Verhalten von 0,1 + 0,2 ungleich 0,3. Ich wandte mich an Stack Overflow, um Hilfe zu erhalten, und fand ein paar Beiträge, die mir halfen. Schauen Sie unten nach:
, , . : . , , .
: , 0,1 + 0,2 = 0,30000000000000004?
, , Java C, , . : .
, .
, : ? . :
, , . , 0,0005606 :
Significant- , , , (10). , .
: . 32 , 64 .
, JavaScript IEEE 754.
64 , () 0 51, - 52 62, - 63.
0,1 64- IEEE754.
(0,1) 10 ( 2).
0,1 2 , .
64 , , , 52 .
52 , :
. :
11 , 64- , -4 .
0,1:
0.2 :
, , :
:
0,1 + 0,2.
0,1 + 0,2 = 0,30000000000000004.