matlab用牛顿迭代法求X^3 2x^2 10x-20==0
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/12 19:35:08
应该不行吧,第一个出现的代码,循环条件是whilekkk==3&&theta
-20.5558285905308换成弧度是-0.358766883260444选不同初值得到另外一个结果0.758766883260445换成弧度43.474140786708两边同时平方相减得到f
symsxx0=2;f=x^3-3*x-1;eps=1e-6;maxcnt=1000;fx=diff(f,x);x1=x0;cnt=1;whilecnt
#include"stdio.h"#include"math.h"main(){floatx,f,f1;//f代表f(x)=2x^3-4x^2+5x-18,f1代表f‘(x)=2*x^2-4*2x^+
m=0;%起始点e=0.00001;%精度h=0.000001;%步长f=inline('1-y-2*sin(y+3)','y');%x=1,c=2,k=3代入具体数值t=0;f0=feval(f,m
#includevoidmain(){floats,f0,h,x;intn,i;printf("inputn:");scanf("%d",&n);h=1.0/n;f0=4.0;s=0.0;for(i=
x=x-(H*sqrt(1+2*x/H)-x*arch(H/x+1)-b)/(1/sqrt(1+2*x/H)-arch(H/x+1))-x*((H/x^2+(H^2/x^3+H/x^2)/sqrt(H
超过计算范围或精度.
源程序如下:clearclcN=100;x=2;forii=0:Nxl=x;num=ii;x=x-(x^3-3*x+1)/(3*x^2-3);ifabs(x-xl)
#include#includedoubleeps=10E-6;doublef(doublek)//原函数方程{returnlog10(k)+k-2.0;}doubleget(doublek){ret
首先整出来牛顿迭代法解方程:2x^3-4x^2+3x-6=0F(x0)=2x^3-4x^2+3x-6F(x0)=6x^2-8x+3....Y=0X=3DoX1=x'Z=((2*X1-4)*X1+3)*
用迭代法求平方根的迭代公式为:要求前后两次求出的得差的绝对值少于0.00001.#include"math.h"main(){floatx0,x1,a;scanf("%f",&a);x1=a/2;do
哈啊啊啊啊啊啊啊啊啊啊啊再问:bjijib
对于求平方根,变成方程模式为f(x)=x^2-a,即求此方程的实根;下面编写了两个function函数,可以直接调用.二分法:functionx=sqrt_bisect(a)f=@(x)x^2-a;i
x=10^(1/x),{"浠f崲娆℃暟","x鍊?},{1,10.0000000000},{2,1.25892541179},{3,6.2277079027},{4,1.44734718383},{5
symsXYZeq1=X+Y+4*(Z-40)-4410;eq2=Z*X^3-(Z-40)*(X-80)^3+80*Z^3-105304178*10^4;eq3=Z*Y^3-(Z-40)*(Y-80)
function[A]=cal(a,b,v)%a,b表示区间,v是精度i=1;x=(a+b)/2;A=[ix];t=x-(x^3-x-1)/(3*x^2-1);%迭代函数while(abs(t-x)>
1.创建一个函数%牛顿法求立方根functionx=cube_newton(a)f=@(x)x^3-a;df=diff(sym('x^3-a'));ifa==0;x1=a;elsex0=a;x1=x0
用fsolve可解出来:先构造函数:functionoutput=solveproblem(X)c=X(1);m=X(2);y=X(3);output(1)=(1-c)*(1-y)*(1-m)*10.
symsxf=x^x-10;df=diff(f,x);eps=1e-6;x0=10;cnt=0;MAXCNT=200;%最大循环次数whilecnt