牛顿迭代法和二分法求解方程的跟
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
求方程x^3-14x+1=0的根。
Hale Waihona Puke Baidu
牛顿迭代法:
N=1000; x0=0; x1=x0^3-14*x0+1; E=0.000001; k=1; while(norm(x1-x0)>=E&&k<N) x0=x1; f=x0^3-14*x0+1; f1=3*x0*x0-14; if(f1~=0) x1=x0-f/f1; end k=k+1; end fprintf('迭代的次数为 k=%d\n',k); fprintf('方程的根为 x=%.7f\n',x1); fprintf('\n');
x_up = x; else x_down = x; end if( abs(x_up-x_down) < error ) break; end end result_x = 0.5*(x_up + x_down); fprintf('迭代的次数为 k=%d\n',k); fprintf('方程的根为 x=%.7f\n',result_x); fprintf('\n');
二分法:
x_up = -1; x_down = 1; error = 0.000001; res_down = x_down^3 - 14*x_down + 1; res_up = x_up^3 - 14*x_up + 1; k=1; while(res_down * res_up < 0) k=k+1; x = 0.5*(x_up + x_down); res = x^3 - 14*x + 1; if( res*res_down < 0 )
Hale Waihona Puke Baidu
牛顿迭代法:
N=1000; x0=0; x1=x0^3-14*x0+1; E=0.000001; k=1; while(norm(x1-x0)>=E&&k<N) x0=x1; f=x0^3-14*x0+1; f1=3*x0*x0-14; if(f1~=0) x1=x0-f/f1; end k=k+1; end fprintf('迭代的次数为 k=%d\n',k); fprintf('方程的根为 x=%.7f\n',x1); fprintf('\n');
x_up = x; else x_down = x; end if( abs(x_up-x_down) < error ) break; end end result_x = 0.5*(x_up + x_down); fprintf('迭代的次数为 k=%d\n',k); fprintf('方程的根为 x=%.7f\n',result_x); fprintf('\n');
二分法:
x_up = -1; x_down = 1; error = 0.000001; res_down = x_down^3 - 14*x_down + 1; res_up = x_up^3 - 14*x_up + 1; k=1; while(res_down * res_up < 0) k=k+1; x = 0.5*(x_up + x_down); res = x^3 - 14*x + 1; if( res*res_down < 0 )