解题思路:
更具公式算法,写出步骤即可;
注意:定义为long double 否则会时间超限,输出保留三位小数;
注意事项:
参考代码:
#include<stdio.h> #include<math.h> int main() { long double x,x1,x2; scanf("%Lf",&x); x1=x/2; x2=(x1+x/x1)/2; while(fabs(x1-x2)>0.00001) { x1=x2; x2=(x1+x/x1)/2; } printf("%.3Lf",x2); return 0; }
0.0分
7 人评分
题目要求不是前后两个绝对值小于0.00001吗,为啥这里是 while(fabs(x1-x2)>0.00001)大于呢?
程序小白 2018-11-21 11:39:10 |
同问 求大神解答
计类02Pb 2018-11-26 16:22:37 |
要求小于0.0001,当大于0.0001的时候继续执行程序知道小于0.00001就输出了
javaerlian 2019-03-07 23:20:00 |
@1362014030 while后面的表达式为真就一直进行循环
我想问一下,我复制了你的源代码,可是结果是0.000,这是为什么
数列 (C++代码)浏览:707 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:695 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:641 |
【蟠桃记】 (C语言代码)浏览:711 |
2^k进制数 (C语言描述,蓝桥杯)浏览:1457 |
1035 题解浏览:875 |
Tom数 (C语言代码)浏览:598 |
分解质因数 (C++代码)浏览:1561 |
C语言程序设计教程(第三版)课后习题8.9 (C语言代码)浏览:576 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:683 |