查找数效率平方根的算法

时间:2019-11-23 12:02:10

标签: python algorithm time

我已经在python上创建了一个算法来查找数字的平方根,但是我很想知道是否可以做任何快捷方式。我有一个while循环,需要在循环之前回调一条语句。例如,它从2开始,到6,然后循环回到1,直到6,回到1,依此类推。我尝试使用有效的i变量,但不确定是否最有效。因此,从本质上讲,任何人都可以帮助我提高该算法的效率,谢谢。

def rooter(A , R):
i = 0
if A <= 0:
    print("Invalid number")
    return -1
(c) = (A / R)
while abs(R - c) > 0.01:
    if i > 1:
        (c) = (A / R)
    s = (1/2) * (R + c)
    R = s
    i +=1
answer = (round(R, 3))
print(answer)

rooter(4, 100)

R代表计算的准确性。

1 个答案:

答案 0 :(得分:0)

您可以通过模拟do ... while

来简化代码
while True:
    c = A / R
    R = (R + c)/2
    if abs(R - c) < 0.01: break

请注意,计算的准确性为0.01,而不是您所说的R

相关问题