[ 
https://issues.apache.org/jira/browse/MATH-744?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13206514#comment-13206514
 ] 

Thundre commented on MATH-744:
------------------------------

I don't have the test classes working in Eclipse, so I can't do it there.  
Here's a main method that demonstrates.  (10^401+1)/(10^400) is just a smidgen 
more than 10. 

    public static void main(String args[]) {
        double x = new BigFraction(BigInteger.TEN.pow(401).add(BigInteger.ONE),
                BigInteger.TEN.pow(400)).doubleValue();
        System.out.println(x);
        System.exit(0);
    }
                
> BigFraction.doubleValue() returns Double.NaN for large numerators or 
> denominators
> ---------------------------------------------------------------------------------
>
>                 Key: MATH-744
>                 URL: https://issues.apache.org/jira/browse/MATH-744
>             Project: Commons Math
>          Issue Type: Bug
>    Affects Versions: 2.2
>            Reporter: Thundre
>         Attachments: site.patch
>
>
> The current implementation of doubleValue() divides numerator.doubleValue() / 
> denominator.doubleValue().  BigInteger.doubleValue() fails for any number 
> greater than Double.MAX_VALUE.  So if the user has 308-digit numerator or 
> denominator, the resulting quotient fails, even in cases where the result 
> would be well inside Double's range.
> I have a patch to fix it, if I can figure out how to attach it here I will.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to