Какой тип в C# обеспечивает точное представление значения с плавающей точкой

Рейтинг: 2Ответов: 2Опубликовано: 24.04.2015

Какой тип обеспечивает точное представление значения с плавающей точкой (float)?

Ответы

▲ 5Принят

Точное представление в C# обеспечивает тип decimal - 28–29 значащих цифр.

Абсолютно точного представления числа с плавающей точкой в C# нет, т.к. оно потребовало бы бесконечного количества памяти (по крайней мере для иррациональных чисел).

▲ 3

В C# нет такого типа. Все типы имеют ограниченную точность, кроме класса BigInteger.
Последний можно приспособить для хранения чисел с плавающей точкой, если отдельно хранить еще и положение десятичной точки в числе.

Однако, смею заметить, что даже не все непериодические десятичные числа обеспечивают точное представление. Так, например, число 1/3 не может иметь точного представления в виде непериодической десятичной дроби.