Previous Up Next

6.2.1  Transform a floating point number into a rational

Rational numbers can be approximated by floating point numbers, but since floating point numbers are not exact, they cannot typically be converted back to the original rational number. However, the float2rational or exact command will try convert a floating point to a nearby rational number.

Examples

float2rational(0.3670520231)

Output for epsilon=1e-10:

     
127
346
          
evalf(363/28)
     
12.9642857143           
float2rational(12.9642857143)
     
363
28
          

If two representations are mixed, for example:

1/2+0.7

the rational is converted to a float.

     
1.2           
1/2+float2rational(0.7)
     
6
5
          

Previous Up Next