我知道我們可以使用公式math.floor(b**(1.0/i))-math.ceil(a**(1.0/i))+1
來計算給定範圍內的平方數,當我想要找到完美立方體的數量時,它是否成立?計算給定範圍內的完美平方,完美立方體等的數量?
更新:對於所有的人都面臨着這樣的問題,樓層和小區功能不能很好平方根,立方根工作後,等
我知道我們可以使用公式math.floor(b**(1.0/i))-math.ceil(a**(1.0/i))+1
來計算給定範圍內的平方數,當我想要找到完美立方體的數量時,它是否成立?計算給定範圍內的完美平方,完美立方體等的數量?
更新:對於所有的人都面臨着這樣的問題,樓層和小區功能不能很好平方根,立方根工作後,等
浮點數計算are not exact。
64 ** 1/3的值可能是〜3.99999975,所以floor
給出3.或4.000000016,所以ceil
給出5(我沒有檢查實際值)。您必須考慮數字錯誤。
對於此任務,您可以計算根(使用**或Math.Pow),並檢查與floor-ed和ceil-ed值的差異。如果差異非常小,請檢查此根是否確切一個 - 使用乘法的整數。
什麼值不適用?這是Python的問題還是你的算法? –
算法我相信嗎? –
例如:範圍32,64。 –