04552ff71b
Before this patch raising a big-int to a negative power would just return 0. Now it returns a floating-point number with the correct value.
29 lines
553 B
Python
29 lines
553 B
Python
# test bignum operation with float/complex
|
|
|
|
i = 1 << 65
|
|
|
|
# convert bignum to float on rhs
|
|
print("%.5g" % (2.0 * i))
|
|
|
|
# negative bignum as float
|
|
print("%.5g" % float(-i))
|
|
|
|
# this should convert to float
|
|
print("%.5g" % (i / 5))
|
|
|
|
# these should delegate to float
|
|
print("%.5g" % (i * 1.2))
|
|
print("%.5g" % (i / 1.2))
|
|
|
|
# this should delegate to complex
|
|
print("%.5g" % (i * 1.2j).imag)
|
|
|
|
# negative power should produce float
|
|
print("%.5g" % (i ** -1))
|
|
print("%.5g" % ((2 + i - i) ** -3))
|
|
|
|
try:
|
|
i / 0
|
|
except ZeroDivisionError:
|
|
print("ZeroDivisionError")
|