считают,
object a =1.123456; float f = convert.ToSingle(a);
Но когда я печатаю значение f, я получаю 1.123455.
Это округляется. Также проблема в том, что я не могу изменить тип данных с плавающей точкой в коде. Пожалуйста помоги.
Это сделано из-за способа работы типа с плавающей точкой. Если вам нужна более высокая точность (за счет некоторой производительности) - используйте вместо этого тип Double или Decimal.
Для получения дополнительной информации о том, почему с плавающей точкой теряется точность, читайте: http://msdn.microsoft.com/en-us/library/c151dt3s%28VS.80%29.aspx