中易网

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

答案:2  悬赏:40  
解决时间 2021-01-17 14:55
  • 提问者网友:骑士
  • 2021-01-17 02:54
用c语言求x-cosx=0在x=0.1附近的根
最佳答案
  • 二级知识专家网友:平生事
  • 2021-01-17 03:49
可以用二分法或牛顿迭代法来计算。不过要求是求x = 0.1附近的根,那就用牛顿迭代法比较好。

#include
#include

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
",a,x);


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


在Matlab中用下面的语句计算,可得到结果为0.7391,可以保证精确到0.001.
fun = @(x)(x -cos(x));
fzero(fun,0.1)
全部回答
  • 1楼网友:不想翻身的咸鱼
  • 2021-01-17 05:11
这是一元一次方程,只有一个变量,也只有一个解(或无解),叫我怎么求x=0.1的根?
只有二元一次方程才有函数图像,才有x=多少时,y的值
例如y=x+1这样,y才会随着x变化而变化
如果2=x+1,那么x只有一个确定的值,就是x=1,
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息