Fractions C++

alpha

C++ library adds mathematical fractions. Example: 1/3, 4/7, 49/357...

Last Update:
Browse All Files
Windows BSD Mac Linux

Description

Example: 1/3, 4/7, 49/357...

Library can:
1) Create fractions from or 2 "long long", or double, or "long long".
2) Round.
3) Methematic operators +, -, *, /, +=, -=, *=, /=.
4) Logic operators <, >, ==, !=, <=, >=.
5) Operator %.
6) Pow and fast pow.
7) Module: |-a| = a, |b| = b.
8) Input / output stream.
9) Convert in double and string.
And other...

User Ratings

★★★★★
★★★★
★★★
★★
0
0
0
0
1
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 2 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 1 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 3 / 5
Write a Review

User Reviews

• dmitryvm
1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

boost::rational have almost all functionality listed, except: - no conversion FROM floating point (and there is good reason for this decision, see boost documentation for details) - no % operator (it makes no sense for rational numbers) - no power function (may be implemented in a few lines of code) On the other hand, boost::rational is implemented as class template and can be used with any integer type for numerator and denominator, including BigNum-like. So, boost::rational can be used to implement arbitrary-precision arithmetic. And the lack of arbitrary-precision support in this library makes it almost useless, because rational numerator and denominator tend to grow very fast even in very simple cases. As an example, try to compute rational approximation to e = 2.71... using Taylor series.

Posted 10/09/2013

English, Russian

Intended Audience

Developers, Science/Research

C++

2013-09-29