Возможно ли ...

Александр
17.11.2005 10:46

... получить результат в дробном представлении и сколько значащих цифр после запятой можно получить?
Raul
18.11.2005 21:38
Сколько потребуется, столько и можно получить :). Арифметика с фиксированной точкой отличается от целочисленной тем, что надо проводить нормализацию при умножении и делении (путем сдвига). Это можно запрограммировать как надстройку над классом.

Александр
18.05.2006 13:51
Я понял, что класс работает только с целыми числами. Работает ли класс с дробными числами?

Raul
22.05.2006 16:56
Напрямую не работает.

Александр
25.10.2007 00:27
Хотелось бы узнать каким образом можно работать с дробными числами. Если возможно то с примерами.

Raul
25.10.2007 15:45
Например, требуется перемножить числа с тремя десятичными цифрами после точки.
cBigNumber a=cBigNumber ("123000", 10); // 123.000
cBigNumber b=cBigNumber ("456789", 10); // 456.789
c = a * b / 1000; // 123.000 * 456.789
cout << (c / 1000) << '.' << (c % 1000);
d = (c * 1000) / b; // 123.000
cout << (d / 1000) << '.' << (d % 1000);
При сложении и вычитании коррекция на 1000 не потребуется.

Для написания ответа авторизуйтесь

Любая перепечатка возможна только при выполнении условий.
Несанкционированное использование материалов запрещено. Все права защищены.
Политика конфиденциальности сайта
Согласие пользователя сайта на обработку персональных данных
©