我已经在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代表计算的准确性。
答案 0 :(得分:0)
您可以通过模拟do ... while
while True:
c = A / R
R = (R + c)/2
if abs(R - c) < 0.01: break
请注意,计算的准确性为0.01,而不是您所说的R
。