[Comm] c language question
Eugene Ostapets
=?iso-8859-1?q?eostapets_=CE=C1_gmail=2Ecom?=
Сб Ноя 4 21:30:19 MSK 2006
04.11.06, Andrey Rybak<ra iop.kiev.ua> написал(а):
>
> >> (Или atof гарантированно возвращает, в данном
> >> примере, либо .16 либо 15.99999... ?
> ----------------------- для меня важно это в контексте вашего ответа
> >> Тогда с дирекшионом проблем нет)
> >> И чем эти функции отличаются от ceil & floor? Опять-таки не избежать
> >> явного приведения типов (int)
> >> Это я к тому - а что ж я плохо понимаю тогда?
> >>
> > Разницу между
> > a=0.16
> > a=0.2*0.8
> > В первом случае сохранится 0.16, а во втором - 0.1599999999999...
> > Округлять приходится всегда, а уже потом заниматься приведением
> > типов...
> >
> Хорошо - уточню часть моего вопроса.
> Перед округлением обязательно направление округления определять? Т.е.
> определить ближайшие целые (они с обеих сторон), а потом в зависимости
> от того, кто ближе выбирать направление округления?
Обычно направление округления определяется задачей... Для большинства
случаев подходит правило a<0.5 - a=0, a>=0.5 - a=1, и это делает
round, но для бухгалтерии такой варант не подходит - там свои
заморочки когда и где окргулять к ближайшему целому, а когда к
ближайшему большему целому... Так что метод округления зависит от
полной задачи...
> _______________________________________________
> Community mailing list
> Community на lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/community
--
С уважением,
Евгений Остапец
uin: 23747217
jid: eugene_ostapets на jabber.ru
Подробная информация о списке рассылки community