Problem Q: 利用牛顿方法计算正数的平方根 | 您所在的位置:网站首页 › python求一个数的平方的程序 › Problem Q: 利用牛顿方法计算正数的平方根 |
Problem Description 编写程序,用牛顿方法计算正数的平方根。 设x是输入的数。牛顿方法需要先给出x平方根的猜测值y(例如y取1)。后续的猜测值通过计算y和x/y的平均值得到。 例如:求解3的平方根的过程 xyx/y y和x/y的平均值3132321.51.7531.751.714291.7321431.732141.731961.7320531.73205 1.73205 1.73205注意,y的值逐渐接近x的平方根。当y的新旧值之差的绝对值小于0.000001和y的乘积时程序终止。 Input Description 输入一个正实数x。 Output Description 输出x的平方根,保留6位小数。 Sample Input 3Sample Output 1.732051Hint 是求正数的平方根,因此输入应该定义为double类型。 注意:当y的新旧值之差的绝对值小于0.000001和y的乘积时程序终止,输出y的旧值。 #include #include int main() { double x, y, j; scanf("%lf", &x); y = 1; j = (y + x / y) / 2; while(fabs(y - j) > 0.000001 * y) { y = j; j = (y + x / y) / 2; } printf("%f\n", y); return 0; } |
CopyRight 2018-2019 实验室设备网 版权所有 |