C程序设计第五章作业13
程序员成长之旅 · 程序员成长之旅/C语言/习题(C语言程序设计)/第五章习题 · 249 字
问:
键入需要求的平方根,按照迭代法计算 并且输出(精度小于
即小于0.00001)
迭代法计算方法:

答:
#include<stdio.h>
#include<math.h>
int main()
{
//int Num = 0;
double Num = 0,accuracy = 0.00001, Xn = 0.00001, XnAdd1 = 0.00001, difference = 0.00001;
printf("Enter square root:\n");
scanf("%lf", &Num);
if (Num > 0 && Num <= 99999)
{
Xn = Num * 0.50000;//设置初始值
do
{
XnAdd1 = ((Xn + Num / Xn) / 2.00000);
Xn = ((XnAdd1 + Num / XnAdd1) / 2.00000);
difference = fabs(XnAdd1 - Xn);//检查精度
} while (difference >= accuracy);//检查精度
Xn < XnAdd1 ? printf("You enter number is[%.2f],Result is [%.5f]", Num, Xn) : printf("You enter number is[%.2f],Result is [%.5f]", Num, XnAdd1);
}
else
{
setbuf(stdin, NULL);
printf("Data is error!\n");
return 0;
}
return 0;
}