用c语言求x-cosx=0在x=0.1附近的根

 我来答
木生子识时务
推荐于2018-03-08 · 知道合伙人软件行家
木生子识时务
知道合伙人软件行家
采纳数:455 获赞数:1970
现在浙江大学学习,对电脑网络,软件应用有过全面系统的学习。

向TA提问 私信TA
展开全部

可以用二分法或牛顿迭代法来计算。不过要求是求x = 0.1附近的根,那就用牛顿迭代法比较好。

/*
用牛顿迭代法计算x-cosx在0.1附近的值。需要首先输入精度
*/
#include<stdio.h>
#include<math.h>

void main(){
double x = 0.1; /* 迭代初始值 */
double y;
double tmp;
double a;
printf("请输入计算的精度(例如0.001):");
scanf("%lf",&a);
do{
y = x - (x - cos(x))/(1 + sin(x));
tmp = x;
x = y;
}while(fabs(y - tmp) >= a);
printf("x-cosx在0.1附近的值(精度为:%lf)为:%lf\n",a,x);

}

 

你输入精度为0.001,得到的结果应该就是:0.739085。


在Matlab中用下面的语句计算,可得到结果为0.7391,可以保证精确到0.001.

fun = @(x)(x -cos(x));
fzero(fun,0.1)
阿鸾44
2015-05-21 · TA获得超过2137个赞
知道大有可为答主
回答量:2141
采纳率:50%
帮助的人:645万
展开全部
这是一元一次方程,只有一个变量,也只有一个解(或无解),叫我怎么求x=0.1的根?

只有二元一次方程才有函数图像,才有x=多少时,y的值

例如y=x+1这样,y才会随着x变化而变化

如果2=x+1,那么x只有一个确定的值,就是x=1,
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式