meoluoihvtc
Thành viên mới

- Tham gia
- 11/9/08
- Bài viết
- 17
- Được thích
- 4
Bạn định dạng cho C4 là Number --> kết quả là 0Chào cả nhà.
Em có 1 file như sau:
1. 300.347,23 2. 299.997,87
3. 349,36
Công thức 4= 1-2-3 ra kết quả là: (0,0000000000139834810398); đáng lý ra kết quả phải bằng 0.
Mọi người giải thích lý do giúp em với ạ?
Em cám ơn.
Do sai số trong Excel, chỉ cần qua vài phép tính với số thập phân, sẽ xảy ra sai số trong Excel.Cám ơn anh, nhưng mà đúng ra kết quả phải là 0 chẵn chứ không có số thập phân sau dấu phẩy như vậy chứ?
Do định dạng của bạn thôi (sao mà có định dạng số dài LÊ THÊ những số 0 vậy)Cám ơn anh, nhưng mà đúng ra kết quả phải là 0 chẵn chứ không có số thập phân sau dấu phẩy như vậy chứ?
Cách giải quyết vấn đề sai số bằng Format Cells là cực kỳ tai hại, cái này người ta gọi là tự mình lừa chính mình đấy.Bạn định dạng cho C4 là Number --> kết quả là 0
Thì mình đã hỏi bạn đó như bài #5 đó.Cách giải quyết vấn đề sai số bằng Format Cells là cực kỳ tai hại, cái này người ta gọi là tự mình lừa chính mình đấy.
Biết đâu trong một tình huống nào đó, cái "số không" này được đem nhân với một số a cực lớn, như vậy lại thêm một câu hỏi mới nữa: Tại sao 0*a <> 0?!Thì mình đã hỏi bạn đó như bài #5 đó.
Đâu có nghành nào cần độ chính xác khủng khiếp như vậy (vài chục số sau dấu phảy).
Tôi cũng đã mấy lần bị rắc rối do vụ này rồi. Chẳng hạn là viết Code để lọc ra những dòng có giá trị bằng 0, đến lúc chạy vẫn thấy sót ra mấy dòng. Điều đầu tiên nghĩ đến là code sai, bỏ ra cả ngày trời kiểm tra, viết lại vẫn vậy. Kiểm tra dữ liệu thì không phát hiện ra do Format.Biết đâu trong một tình huống nào đó, cái "số không" này được đem nhân với một số a cực lớn, như vậy lại thêm một câu hỏi mới nữa: Tại sao 0*a <> 0?!
... Bó tay với bác Bill![]()
Cảm ơn bạn vì đã cho một ít kinh nghiệm.Người làm toán chuyên nghiệp đều biết cái gọi là "có thể coi như 0".
Theo cách này, người ta tự đặt cho mình một con số rất nhỏ, ép si lon (thường là 10^-10), gọi là sai số chấp nhận. Cứ trị nào nhỏ hơn số này thì coi như zê rô. Và muốn so sánh 2 số với nhau, người ta dùng IF(ABS(a-b)<=epsilon, "bằng nhau", "không bằng nhau")