error_demo1.py3 1.0e16*((1.0+1.2e-16)-1.0) only about 16 digits accuracy, power of 10 not exact ans= 2.220446049250313 force store, break optimization, no difference here ans= 2.220446049250313 expression with double ans= 0.0 error_demo1.py3 (1.0+1.0e-16)+1.0 too small ans= 0.0 force store, break optimization, no difference here ans= 0.0