C程序设计第五章作业13
目录:程序员成长之旅/C语言/习题(C语言程序设计)/第五章习题
问:
键入需要求的平方根,按照迭代法计算 并且输出(精度小于
🖼 图片占位(归档模式)图片见原始导出:
即小于0.00001)
C%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E7%AC%AC%E4%BA%94%E7%AB%A0%E4%BD%9C%E4%B8%9A13.assets/0.8137291024533482.png迭代法计算方法:
🖼 图片占位(归档模式)图片见原始导出:
C%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E7%AC%AC%E4%BA%94%E7%AB%A0%E4%BD%9C%E4%B8%9A13.assets/clip_image001e90afed6-1773-496b-8d7b-59d820bd105d.png🖼 图片占位(归档模式)图片见原始导出:
答:
C%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E7%AC%AC%E4%BA%94%E7%AB%A0%E4%BD%9C%E4%B8%9A13.assets/20180202164541463.jpg#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;
}