cannot convert log(x)/log(2) to int
If I define J(x)
function as:
def J(x):
sum = 0
print(int(log(x)/log(2)))
for i in range(1, int(log(x)/log(2)) + 1):
sum = sum + 1 / i * prime_pi(x**(1/i))
return(N(sum))
when I try to plot it using:
p = plot(J(x), (x, 1, 20))
show(p)
I get the message:
cannot convert log(x)/log(2) to int
but if try J
function acting on any float number I get a perfect value like:
sage: J(123.456789)
34.0333333333333
I have tried to replace int by floor but with the same result. Any help to solve the plotting problem will be welcome. Thank you.