迭代法求正数的平方根C语言
时间: 2024-11-24 19:02:01 浏览: 21
利用牛顿迭代法求平方根.pdf
迭代法是一种常用的数值计算方法,用于求解函数的近似解,如正数的平方根。在C语言中,牛顿迭代法是一个常见的选择,因为它收敛速度快且简单易实现。以下是使用牛顿迭代法求解正数`x`平方根的C语言代码示例:
```c
#include <stdio.h>
#include <math.h>
double sqrt_iterative(double x, double guess = x / 2) {
while (guess * guess > x) { // 当估计值平方大于实际值时继续迭代
guess = (guess + x / guess) / 2; // 根据牛顿公式更新估计值
}
return guess;
}
int main() {
double num;
printf("请输入一个正数: ");
scanf("%lf", &num);
if (num < 0) {
printf("错误:输入的是负数,无法求平方根。\n");
} else {
double result = sqrt_iterative(num);
printf("该数的平方根为: %.6f\n", result);
}
return 0;
}
```
在这个代码中,`sqrt_iterative`函数接收一个正数`x`和一个初始猜测值,默认取`x`的一半。通过不断迭代,直到猜测值足够接近真实平方根为止。
阅读全文