? for(n=1,30,print([n,ceil(sqrtn(n^2,2))]))

[1, 1]

[2, 2]

[3, 4]

[4, 4]

[5, 5]

[6, 7]

[7, 8]

[8, 8]

[9, 10]

[10, 11]

[11, 11]

[12, 12]

[13, 13]

[14, 15]

[15, 16]

[16, 16]

[17, 17]

[18, 19]

[19, 20]

[20, 21]

[21, 21]

[22, 22]

[23, 23]

[24, 24]

[25, 25]

[26, 26]

[27, 28]

[28, 29]

[29, 30]

[30, 31]

? for(n=1,30,print([n,floor(sqrtn(n^2,2))]))

[1, 1]

[2, 2]

[3, 3]

[4, 4]

[5, 5]

[6, 6]

[7, 7]

[8, 8]

[9, 9]

[10, 10]

[11, 10]

[12, 11]

[13, 13]

[14, 14]

[15, 15]

[16, 16]

[17, 17]

[18, 18]

[19, 19]

[20, 20]

[21, 21]

[22, 21]

[23, 23]

[24, 23]

[25, 25]

[26, 26]

[27, 27]

[28, 28]

[29, 29]

[30, 30]

Is it a problem with the sqrtn(x,n) (n-th root of x)? Or wih floor and ceil functions?

I wanted to search if some numbers were perfect powers using the trick:

If(floor(sqrt(x,n))==ceil(sqrt(x,n)),.....

and trying to use n (the n-th root ) as a variable in a for loop to look for many possible n-roots if this was possible technically.

What is the way to solve my problem to detect if some kind of numbers are perfect powers?

? for(n=1,30,print([n,floor(sqrtn(n^3,3))]))

[1, 1]

[2, 2]

[3, 3]

[4, 4]

[5, 5]

[6, 6]

[7, 7]

[8, 8]

[9, 9]

[10, 9]

[11, 10]

[12, 11]

[13, 13]

[14, 14]

[15, 15]

[16, 16]

[17, 16]

[18, 17]

[19, 19]

[20, 19]

[21, 21]

[22, 21]

[23, 23]

[24, 23]

[25, 25]

[26, 26]

[27, 27]

[28, 28]

[29, 29]

[30, 30]