看板
[ Fortran ]
討論串[問題] 關於誤差估計的問題
共 5 篇文章
內容預覽:
任何的程式設計,. 浮點數的儲存和運算,. 一定會有誤差。. REAL*4 使用 23個 BITS 來表示. 浮點數的精確度。. 所以,相對誤差可以到 (1.0/ (2^23)). REAL*8 使用 52個 BITS 來表示. 浮點數的精確度。. 所以,相對誤差可以到 (1.0/ (2^52)).
(還有20個字)
內容預覽:
!dec$if(.false.). Hello World, x= 3.141593. x, y, (1.0/x)= 1.6778712E+07 1.6778712E+07 5.9599330E-08. ct1, (1.0/(2^23))= 154891 1.1920929E-07. Press a
(還有487個字)
內容預覽:
底下的程式. 1.0 + 1e-6. 可以算的出來. 1e-7. 有點 勉強. 1e-8. 算不出來. 也就是說,FORTRAN 的 REAL,. DEFAULT 是四個 BYTES, 使用 23個 BITS. 來表示 浮點數的精確度. 大概就是有效位數 六到七位,. ( 1.0 + 1E-8 )
(還有276個字)
內容預覽:
換成 real*8 以後,. (1.0D0 + 1.0D-8) 的結果,可以被計算出來,. 有效位數,可以達到. 2^52 --> 大概是 15位數. 大家可以試試看. program VF1035. implicit none. real*8 x, y, z, ct1. x= 4.0D0*data
(還有161個字)