DAVID MALAN: Dezagun kolpe en orain zure gogoan. Bihurtzen mundu erreala 1 banatzen da 10 1/10, edo 0,1 da, hain zuzen. Baina ordenagailuetan bakarrik izan duten finitua bit kopurua zein den zenbakiak irudikatzeko, ezin duzu beti 1/10 bezalako zenbakiak irudikatzeko dituzten doitasun ezin hobea. Beste era batera esanda, ordenagailuak batzuetan epaiketa deiak eta ez egiteko nahitaez irudikatzeko kopuruaren duzu nahi baita, hain zuzen, nahi duzun bezala. Esate baterako, eman dezagun atzera jo dut sartu programa hau eta 0,1 era aldatzeko, oh, 0.28, horrela adierazten duten Nuke printf hemen printf 28 Zehaztasun-lekuak. Utzi gorde eta programa konpilatu orain en, make floats2 denbora honetan. Exekutatu dot barra floats2 batera. Eta, Jainko maitea, une honetan ez dut ikusten 0.1, baina 0.10000000, hau da, nahiko ona hain urruti. Baina, ondoren, 14901161193847656250. Beno, zer gertatzen da? Beno, bihurtzen da mugikor bat dela normalean ordenagailu baten barruan gordetzen 32 bit-ekin. 32 kopuru mugatu batean, da, jakina, eta horrek dakar duzula bakarrik irudikatzeko daiteke 32 bit kopuru mugatu batekin puntua balioak flotatzen. Zoritxarrez, horrek esan nahi du ordenagailua ezin irudikatzeko guztiak posible puntu mugikorreko zenbakien edo zenbaki errealak, duten munduko existitzen, bit hainbeste bakarrik egiten duelako. Eta beraz, zer da ordenagailua itxuraz kasu honetan, egiten den irudikatzeko 1 / 10era hurbileneko posible mugikorreko puntuaren balioa, ahal dela. Baina dugu begiratuz gero, hemen izan dugun bezala, 28ra dezimalekin, hori ikusteko hasten gara imprecision. Beraz, hau arazo bat da irtenbide perfektua ez. Ordez karroza baten bikoitz bat erabili ahal izango dugu, horietatik 64 bit gisa erabili ohi 32 aurka. Baina noski, 64 ere finitua da, beraz arazoa izango jarraituko dute, are gehiago bikoitzak batera.