首页 > 编程语言 > 详细

c语言:用迭代法求x=a^0.5,迭代公式为x1 = (x0 + a / x0) / 2;前后两次求出的x的差的绝对值小于10^-5

时间:2016-02-18 06:34:51      阅读:866      评论:0      收藏:0      [点我收藏+]

用迭代法求x=a^0.5,迭代公式为x1 = (x0 + a / x0) / 2;要求前后两次求出的x的差的绝对值小于10^-5。

程序:

#include<stdio.h>

#include<math.h>

int main()

{

float a,x0,x1;

printf("请给a赋一个初值:");

scanf("%f", &a);

x0 = a / 2;//不妨令x的初值为x0=a/2,也可以是其他值

x1 = (x0 + a / x0) / 2;

do

{

x0 = x1;

x1 = (x0 + a / x0) / 2;

} while (fabs(x0 - x1) >= 1e-5);

printf("The square root of %5.2f is %8.5f\n", a, x1);//square root表示平方根

return 0;

}

结果:

请给a赋一个初值:2

The square root of  2.00 is  1.41421

请按任意键继续. . .


本文出自 “岩枭” 博客,请务必保留此出处http://yaoyaolx.blog.51cto.com/10732111/1742875

c语言:用迭代法求x=a^0.5,迭代公式为x1 = (x0 + a / x0) / 2;前后两次求出的x的差的绝对值小于10^-5

原文:http://yaoyaolx.blog.51cto.com/10732111/1742875

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!