from math import exp, log
def teste(x):
y1 = (1.0 + x)**32.0
y2 = exp(log(1.0 + x) * 32.0)
y_x = (1.0 + x)**32.0 - exp(log(1.0 + x) * 32.0)
y_12 = y1 - y2
print("x = %f, f(x) = %f, y1 - y2 = %f" % (x, y_x, y_12))
print("int(x + 1) = %d, int(x + 1)**32 = %d" % (int(x + 1), int(x + 1)**32))
print("y1 = %f, y2 = %f" % (y1, y2))
print()
teste(0.0)
teste(1.0)
teste(2.0)
teste(3.0)
ZnJvbSBtYXRoIGltcG9ydCBleHAsIGxvZwoKZGVmIHRlc3RlKHgpOgoJeTEgPSAoMS4wICsgeCkqKjMyLjAKCXkyID0gZXhwKGxvZygxLjAgKyB4KSAqIDMyLjApCgkKCXlfeCA9ICgxLjAgKyB4KSoqMzIuMCAtIGV4cChsb2coMS4wICsgeCkgKiAzMi4wKQoJeV8xMiA9IHkxIC0geTIKCQoJcHJpbnQoInggPSAlZiwgZih4KSA9ICVmLCB5MSAtIHkyID0gJWYiICUgKHgsIHlfeCwgeV8xMikpCglwcmludCgiaW50KHggKyAxKSA9ICVkLCBpbnQoeCArIDEpKiozMiA9ICVkIiAlIChpbnQoeCArIDEpLCBpbnQoeCArIDEpKiozMikpCglwcmludCgieTEgPSAlZiwgeTIgPSAlZiIgJSAoeTEsIHkyKSkKCXByaW50KCkKCnRlc3RlKDAuMCkKdGVzdGUoMS4wKQp0ZXN0ZSgyLjApCnRlc3RlKDMuMCk=
x = 0.000000, f(x) = 0.000000, y1 - y2 = 0.000000
int(x + 1) = 1, int(x + 1)**32 = 1
y1 = 1.000000, y2 = 1.000000
x = 1.000000, f(x) = 0.000003, y1 - y2 = 0.000003
int(x + 1) = 2, int(x + 1)**32 = 4294967296
y1 = 4294967296.000000, y2 = 4294967295.999997
x = 2.000000, f(x) = -5.500000, y1 - y2 = -5.500000
int(x + 1) = 3, int(x + 1)**32 = 1853020188851841
y1 = 1853020188851841.000000, y2 = 1853020188851846.500000
x = 3.000000, f(x) = 26624.000000, y1 - y2 = 26624.000000
int(x + 1) = 4, int(x + 1)**32 = 18446744073709551616
y1 = 18446744073709551616.000000, y2 = 18446744073709524992.000000