永发信息网

Matlab编写程序用二分法求解非线性方程的根

答案:1  悬赏:20  手机版
解决时间 2021-04-07 02:55
Matlab编写程序用二分法求解非线性方程的根
最佳答案
用二分法求方程x*x-x-1=0的正根,要求精确到小数点后四位。(matlab)
l1 计算公式
f(ak)*f(bk)<0;
bk-ak=1/2k-1*(b-a);
a1<=a2<=… <=ak<=…,b1<=b2<=…<=bk<=…。
l2 算法分析
设f(x)∈C[a,b],且f(a)f(b)<0,在[a,b]间寻找实根,记[a1,b1]=[a,b],取x1=(a1+b1)/2,若f(x1)=0,则x1是f(x)=0的根,f(x1)f(a1)>0,则a2=x1,b2=b1,否则a2=a1,b2=x1。得到[a2,b2]满足:f(a2)f(b2)<0,b2-a2=(b1-a1)/2=(b-a)/2,a2>=a1,b2<=b1。以[a2,b2]取代[a1,b1],继续以上过程,直到精度达到要求为止。
l3 源程序
function f1=fun(x);
f1=x-cos(x);
function [x,k]=erfen(a,b,s) %a,b为根区间,s为精度
a=0;b=1;s=1e-4;k=0;
while abs(a-b)>s
x=(a+b)/2;
if fun(a)*fun(x)<0
b=x;
else
a=x;
end
k=k+1;
end
x=(a+b)/2 %x为方程的解
k % k为计算次数
实验结果讨论和分析
本题使用二分法得到的x=0.7391,满足基本要求,题目要求精确到小数点后四位,告诉了本题二分法得应达到得精确度;计算次数为14,二分法收敛性很好,收敛速度不快。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
办《对外贸易经营者备案登记表》需要什么资料
急!我的昨天电脑黑屏了,今天我拆开机箱从装
古代类似杨修的臣子
广荷菜能跟牛肉一起吃吗
森林法昰否规定谁栽树谁受益,我们承·包的土
苹果保修换的机子是不是新机
夸夸班级好榜样的手抄报
大宏汽车租赁地址有知道的么?有点事想过去
川乌,附子为什么要炮制,目的是什么
阜阳火车站到阜阳长途汽车中心站多久,打的多
关于能求财并实现发财的成语
2013款尊尚版2015年7月出厂的道奇酷威是国五
2015年6月1号之后申请劳动仲裁的工伤是按照新
肠干,拉大便拉不下来,怎么办
顾二牛肉馆地址在哪,我要去那里办事
推荐资讯
饥荒 准备那么多锅干什么?
职高里有空姐这个专业么?
肩膀能挑起1000斤算大力士吗
如何鉴别勐昌号普洱茶的好坏和年份??? 急急急
他说恕不奉陪,是不是有埋怨的意思?
在VFP中创建数据库有哪几种方法
金鱼为什么会在冬天脱鳞片
沈阳 有卖Gsky-link的无线网卡吗?
为什么这个社会学历很重要?
王者荣耀李白凤求凰好不好 李白传说皮肤值不
微信怎样设置图案密码
winxp激活密匙
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?