# 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.