Цикл с предусловием

Ниже прикреплено условие задачи, но сделал только через цикл с постусловием. Как условие abs(curr-prev) < eps: записать циклом?

def task(eps):
    prev=1
    n=0
    while True:
        curr=prev*(n+1)/((2*n+1)*(2*n+2))
        if abs(curr-prev) < eps:
            return curr,n+1
        n+=1
        prev=curr
        
print(task(0.0001))

введите сюда описание изображения


Ответы (1 шт):

Автор решения: Harry

Что-то вроде

curr = prev + 10*eps
while abs(curr-prev) > eps:
    prev=curr
    curr=prev*(n+1)/((2*n+1)*(2*n+2))
    n+=1
return curr,n+1

вас устроит?

→ Ссылка