题目:

用迭代法求 平方根

公式:求a的平方根的迭代公式为: X[n+1]=(X[n]+a/X[n])/2 

要求前后两次求出的差的绝对值少于0.00001。 输出保留3位小数


解题思路:

输入x,求出x的平方根x1

本题有两个条件①前后两次求出的差绝对值,x-x1绝对值fabs 小数表示为1E-5②保留三位小数

循环体中的内容是此公式



注意事项:
头文件要加

还有此时根据逻辑更加适合使用do while循环

(并不是都要用for)

参考代码:

#include<stdio.h>
#include<math.h>
int main()
{
    int a;
    double x,x1=1.0;
    scanf("%d",&a);
    do {
        x=x1;
        x1=(x+a/x)/2;
    }
    while(fabs(x1-x)>1E-5);//注意这里while语句之后要加分号
    printf("%.3lf",x1);
    return 0;
}


点赞(0)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论