【发布时间】:2014-10-30 01:26:32
【问题描述】:
我有一个 C 语言小程序,它使用递归函数(使用 while 循环实现)计算正整数 N 的平方根 x。如果我用这个计算x:
x = (1/2)*(x + N/x) //x0 = 1.0
然后x 不断增长到 inf 然后是 nan。但是,如果我使用这个:
x = (x + N/x)/2 //x0 = 1.0
它工作正常,为什么?谢谢。
【问题讨论】:
标签: c floating-point square-root