Вопрос в том,
Чтобы найти квадратный корень числа «N», используя эту процедуру, мы должны реализовать
следующий процесс:
- Угадай значение для квадратного корня из N
- Разделите N на это предположение
- Среднее значение результата с исходной оценкой, чтобы получить новую оценку
- Перейти к шагу 2 и повторить
Я установил код для возврата Guess, если он находится в пределах 0,5 от предыдущего Guess, и если функция не повторяется. Я не уверен, как заставить это повториться или как замкнуть петлю.
def SqrRt(Number,Guess):
while Guess2 == ((Estimate+Guess)/2):
if (Estimate - Guess2) <= 0.5:
return Guess2
elif (Estimate - Guess2) >= -0.5:
return Guess2
else:
Estimate = (Number/Guess)
Guess2 = Estimate + 1
answer = SqrRt (34567823321421,500000)
печать (ответ)