橙子是只喵 2021-10-25 14:37 采纳率: 100%
浏览 269
已结题

python用迭代法求平方根要求用while循环

问题描述】用迭代法求a的平方根,求平方根的迭代公式如下所示:
x(0)=1;
x(n+1)=1/2(x(n)+a/x(n)) (n>=0)

        上面的式子中,x(0)是指x最初的值,x(n)是指迭代n次后的值,x(n+1)是指迭代n+1次后的值。
        要求:前后两次求出的x的差的绝对值小于0.00005

【输入形式】标准输入的一行表示整型数据a。
【输出形式】标准输出的一行表示计算结果,保留小数点后15位。
【样例输入】4
【样例输出】2.000000000000002

  • 写回答

1条回答 默认 最新

  • -Undefined_ 2021-10-25 15:20
    关注
    a=int(input())
    x1=1
    x2=(x1+a/x1)/2
    while abs(x2-x1)>=0.00005:
        x1=x2
        x2=(x1+a/x1)/2
    print('{:.15f}'.format(x2))
    

    觉得有用的话采纳一下哈

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 10月25日
  • 已采纳回答 10月25日
  • 创建了问题 10月25日