Как получить десятичную часть числа с плавающей запятой?

Мне нужно извлечь десятичную часть числа с плавающей запятой, но я получаю странные результаты:

float n = 22.65f;
// I want x = 0.65f, but...

x = n % 1; // x = 0.6499996

x = n - Math.floor(n); // x = 0.6499996185302734

x = n - (int)n; // x = 0.6499996

Почему это происходит? Почему я получаю эти значения вместо 0,65 ?

45
задан Cristian 16 February 2011 в 13:34
поделиться