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 ạ
Cần Giải Quyết vấn đề Dấu phẩy động và sai số
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
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?