Ticket #2579: integerdiv.patch

File integerdiv.patch, 1.3 KB (added by Rishikesh, 15 years ago)
  • sage/rings/integer.pyx

    # HG changeset patch
    # User Rishikesh <rishikes@math.uwaterloo.ca>
    # Date 1205945505 14400
    # Node ID 228538d10730aef9d5e4fe7c22c84f164ab6006f
    # Parent  ccce3081e4f9cbf1283b2b06a47c54f974c39af9
    Modified div to use quo_rem
    
    diff -r ccce3081e4f9 -r 228538d10730 sage/rings/integer.pyx
    a b cdef class Integer(sage.structure.elemen 
    15451545            q   -- the quotient of self/other
    15461546       
    15471547        EXAMPLES:
     1548            sage: z = Integer(-231)
     1549            sage: z.div(2)
     1550            -116
    15481551            sage: z = Integer(231)
    15491552            sage: z.div(2)
    15501553            115
    cdef class Integer(sage.structure.elemen 
    15551558            ...
    15561559            ZeroDivisionError: other (=0) must be nonzero
    15571560        """
    1558         cdef Integer _other, _self
    1559         _other = integer(other)
    1560         if not _other:
    1561             raise ZeroDivisionError, "other (=%s) must be nonzero"%other
    1562         _self = integer(self)
    1563 
    1564         cdef Integer q, r
    1565         q = PY_NEW(Integer)
    1566         r = PY_NEW(Integer)
    1567 
    1568         _sig_on
    1569         mpz_tdiv_qr(q.value, r.value, _self.value, _other.value)
    1570         _sig_off
    1571        
     1561        q,_=self.quo_rem(other)
    15721562        return q
    15731563       
    15741564