DAVID MALAN: Nézzük most eldobod az agyad. Kiderült, hogy a való világban 1 osztott valóban 10 1/10, vagy 0,1. De a számítógépek csak véges bitek száma, amellyel számokat, akkor nem mindig a számoknak, mint 1/10 tökéletes pontossággal. Más szóval, a számítógépek néha hogy ítéletet hívásokat, és nem feltétlenül tükrözik a szám szeretnénk legpontosabban kíván. Például, tegyük fel, megyek vissza a ezt a programot, és változtassa meg a 0,1, ó, 0,28, jelezve ezzel, hogy Szeretném printf a printf a 28. helyen pontossággal. Nézzük most menteni, és összeállítja a programot, ezúttal make floats2. Fuss a dot slash floats2. És, édes Istenem, most látom nem 0,1, de 0.10000000, ami elég jó eddig. De aztán, 14901161193847656250. Nos, mi folyik itt? Nos, kiderült, hogy egy úszó jellemzően tárolt belsejében egy számítógépes 32 bit. 32. nyilvánvalóan egy véges számú, amely azt jelenti, hogy csak akkor képviseli 32 bit véges számú A lebegőpontos értékek. Sajnos, ez azt jelenti, hogy a számítógép nem tud megjelenni az összes lehetséges lebegőpontos számok, vagy a valós számok, , hogy létezik a világon, mert csak annyi bit. És akkor mi a számítógép látszólag történik ebben az esetben jelentik 1/10 és a lehető legszorosabb úszó pont értéket tud. De ha megnézzük, mint mi itt, 28 tizedes, kezdjük látni, hogy pontatlanság. Tehát ez a probléma nincs tökéletes megoldás. Tudjuk használni a dupla helyett úszó, amely hajlamos arra, hogy használja a 64 biten szemben 32. De persze, a 64 is véges, így a probléma lesz marad még megduplázódik.