>> SPEAKER 1: Giả sử tôi muốn viết một chương trình in ra một phao,
đặc biệt là kết quả chia 1 10.
Vâng, bản năng đầu tiên của tôi sẽ được viết chương trình này như sau.
Float f bằng 1 chia cho 10, và sau đó in e phần trăm .1 f, do đó
có nghĩa rằng tôi muốn in một phao với một số thập phân,
dấu gạch chéo ngược n dấu phẩy f.
Bây giờ chúng ta biên dịch chương trình này.
Làm phao 0 dot dấu gạch chéo phao 0.
>> Vâng, đó là không hoàn toàn đúng.
Tôi khá chắc chắn rằng 1 chia cho 10, hoặc 1/10 không phải là 0.0, nhưng 0.1, nhưng
ở đây tôi nhìn thấy trên màn hình 0.0.
Những gì đang xảy ra?
Vâng, nó quay ra rằng trong c, nếu bạn chia một int bởi một int,
bạn lấy lại một int.
Và vì vậy mặc dù 1 chia cho 10 là thực sự 0.10, 0.1 không có thể phù hợp trong một int,
và vì vậy những gì c, không có gì nó cắt cụt, hoặc ném đi tất cả mọi thứ sau khi
số thập phân, do đó để lại chúng tôi chỉ với 0.
>> Nhưng sau đó, tất nhiên, với in f, chúng tôi xác định rằng chúng tôi muốn in f để
một chữ số thập phân, và do đó 0 được hiển thị như 0.0.
Vâng, rõ ràng đây là một vấn đề mà cần một giải pháp.