"didier deshommes" <[EMAIL PROTECTED]> writes: > On Thu, Mar 6, 2008 at 4:22 PM, Nikos Apostolakis <[EMAIL PROTECTED]> wrote: >> >> Hello group, >> >> Is the following behavior a bug, or am I missing some fundamental >> understanding about how Integer works? >> >> ,---- >> | sage: num = RealField(12).random_element(1,9.99) >> | sage: num >> | 3.18 >> | sage: num*100 >> | 318. >> | sage: Integer(_) > > I can confirm this. I think numbers are rounded up when they are > printed, which leads to confusion: > {{{ > sage: num = RealField(12).random_element(1,9.99)*100 > sage: num > 406. > }}} > > But num is actually ~405.725! : > {{{ > sage: num -406 > -0.375 > > }}} > > And so ZZ(num) will fail, as it should, since num ~ 405.725. >
Hm, I see! This behavior is very confusing. Wouldn't you say it *is* a bug? Anyway to get what I expected to get I can do something like sage: Integer(sage_eval(str(num))*100) 318 but it seems like an ugly hack. Is there another way? Thanks, Nikos --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-support URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---