30/09/2018, 21:11
Cần Giải Quyết vấn đề Dấu phẩy động và sai số
dấu phẩy động có ảnh hưởng không nhỏ trong việc tính toán!
Ta dễ thấy 2.3 x 6 = 13.8
Tại sao trog java 2.3 x 6 = 12.99999
Làm sao để giải quyết được vấn đề này ạ
Bài liên quan
Vì khi muốn store số 2.3 trong bộ nhớ, nó phải đổi 2.3 sang thành 10.0100110011… để lưu. Vì thế nên mới có sai sót. 1 phương pháp để tránh tình trạng này thì bạn hãy dùng BigDecimal trong java.
Mình cũng dùng BigDecimal mấy lần trước ;
Lúc trước mình new Decimal(2.3) nên sai… và tới hôm nay mình mới hiểu ra rằng new Decimal(“2.3”); mới đúng .
Thanks bạn