How to find integer nth roots?

后端 未结 11 1496
醉酒成梦
醉酒成梦 2020-12-01 16:22

I want to find the greatest integer less than or equal to the kth root of n. I tried

int(n**(1/k))

But for n=125, k=3 this gives the wrong

11条回答
  •  悲哀的现实
    2020-12-01 17:10

    You can round to nearest integer instead of rounding down / to zero (I don't know what Python specifies) :

    def rtn (x):
        return int (x + 0.5)
    
    >>> rtn (125 ** (1/3))
    5
    

提交回复
热议问题