version 1.3, 2007/02/03 21:15:06 |
version 1.4, 2012/03/14 07:35:53 |
|
|
r = ibase |
r = ibase |
ibase = A |
ibase = A |
t = scale |
t = scale |
scale = t + .434*x + 1 |
scale = 0 |
|
if (x > 0) scale = (0.435*x)/1 |
|
scale = scale + t + length(scale + t) + 1 |
|
|
w = 0 |
w = 0 |
if (x < 0) { |
if (x < 0) { |
|
|
t = scale |
t = scale |
|
|
f = 1 |
f = 1 |
scale = scale + scale(x) - length(x) + 1 |
if (x < 1) { |
s = scale |
s = scale(x) |
|
} else { |
|
s = length(x)-scale(x) |
|
} |
|
scale = 0 |
|
a = (2.31*s)/1 /* estimated integer part of the answer */ |
|
s = t + length(a) + 2 /* estimated length of the answer */ |
while (x > 2) { |
while (x > 2) { |
s = s + (length(x) - scale(x))/2 + 1 |
scale = 0 |
if (s > 0) scale = s |
scale = (length(x) + scale(x))/2 + 1 |
|
if (scale < s) scale = s |
x = sqrt(x) |
x = sqrt(x) |
f = f*2 |
f = f*2 |
} |
} |
while (x < .5) { |
while (x < .5) { |
s = s + (length(x) - scale(x))/2 + 1 |
scale = 0 |
if (s > 0) scale = s |
scale = scale(x)/2 + 1 |
|
if (scale < s) scale = s |
x = sqrt(x) |
x = sqrt(x) |
f = f*2 |
f = f*2 |
} |
} |
|
|
scale = t + length(f) - scale(f) + 1 |
scale = 0 |
|
scale = t + length(f) + length((1.05*(t+length(f))/1)) + 1 |
u = (x - 1)/(x + 1) |
u = (x - 1)/(x + 1) |
|
|
scale = scale + 1.1*length(t) - 1.1*scale(t) |
|
s = u*u |
s = u*u |
|
scale = t + 2 |
b = 2*f |
b = 2*f |
c = b |
c = b |
d = 1 |
d = 1 |