Re: Вот простейшие вычисления
От: Павел Кузнецов  
Дата: 16.07.04 02:25
Оценка:
Димыч_:

>
>     b=modf(Bf,&B);
>     . . .
>     c=modf(Cf,&C);
> std::cout<< "; B: "<< b << "; C: " << c <<"\n";
> std::cout<<" c==1?"<<(c==1)<<"; b==1?"<<(b==1)<<"\n";
>

>
> Мои результаты:
> ; B: 1; C: 1
> c==1?0; b==1?0
>
> почему дробная часть равна и не равна 1 одновременно ?????

В данном случае при сравнении чисел плавающих типов на строгое равенство ты получаешь не те результаты, которые ожидаешь, т.к. эти числа равны 1 неточно. Для целей же вывода они округляются. Используй сравнение разности этих чисел с 1 и некоторым маленьким числом.
Posted via RSDN NNTP Server 1.9 beta
Легче одурачить людей, чем убедить их в том, что они одурачены. — Марк Твен
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.