Độ chính xác của kiểu float, double trong C#

Theo mình được biết thì Double và Fload biểu diễn chính xác nhất với số base 2. Nếu biễu diễn số base 10 sẽ không chính xác. Ví dụ như:

float a = 0.1f;       //a chỉ có giá trị xấp xỉ 0.1 chứ không phải giá trị chính xác là 0.1 vì đây là base 10.

Câu hỏi của mình là nếu đổi 0.1 từ base 10 ra base 2 thì “float a” có biểu diễn chính xác tuyệt đối số 0.1 không, và có làm được như thế không? Vì theo mình được biết C# cho phép biểu diễn số nhị phân với prefix là 0b (VD: var b = 0b1010_1011_1100_1110)

Cú pháp đó chỉ dành cho số nguyên thôi :smiley:

3 Likes

Thì ra là vậy :joy:
Cảm ơn ạ!

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?