matlab解方程结果不对

解0.0233321=x+1.366*(0.3-x)^1.7方程,用x=solve('1.366*(0.3-x)^1.7+x-0.0233321=0','x')解出来为什么不对呢,谢谢

第1个回答  2015-03-22
x=
.23140644928918218153101060547769-.67491068262896175490672890157873*i
.20016682566539328529481487387737e-1-.36668625092020700013944479932083*i
.74433216548435660974638651706013+.71122684333944127690630086595804*i
.23140644928918218153101060547769+.67491068262896175490672890157873*i
1.1672434326844091586008062438999+.30480902934830614740946765663994*i
1.1672434326844091586008062438999-.30480902934830614740946765663994*i
.74433216548435660974638651706013-.71122684333944127690630086595804*i
.97150888215238704004539352707680e-1+.65494401824048649803101449105303e-1*i
.97150888215238704004539352707680e-1-.65494401824048649803101449105303e-1*i
.81427195940000123190090181518741e-1+.11074783070017496124927165466808*i
.20016682566539328529481487387737e-1+.36668625092020700013944479932083*i
.50414983100005981616952291587631e-1-.18567195971423744977099629217465*i
.50414983100005981616952291587631e-1+.18567195971423744977099629217465*i
.81427195940000123190090181518741e-1-.11074783070017496124927165466808*i
第2个回答  2015-03-22
没错吧,带回之后是0啊追问

>> x=solve('1.366*(0.3-x)^1.7+x-0.0233321=0','x')
x =
0.10681588167492947138584232845961
等等

还是不对啊,先算(0.3-x)的1.7次方再乘以1,366.你的解出来也是这个结果吗?

追答

x=solve('1.366*(0.3-x)^1.7+x-0.0233321=0','x')
x =
0.020016682566539328529481487387737 - 0.36668625092020700013944479932083*i

。。。我算出来的x是上面这个。。。

本回答被提问者采纳

有谁能解释下用MATLAB解方程的解,和我自己用笔解出来的结果不一样,这...
1.你解错了;2.电脑还是有个精确度;3.可能只是形式不一样,换一下就行了。(4.程序错了,这个可能性灰常小吧,但是作为怀疑的精神还是写上吧。)

MATLAB解方程,用solve函数解出的解不正确,求大神解答
你的解是错误的。将你给出的值a=2,b=3,c=2分别代入 (a+b)\/c=2.5 (a+1)*(b+2)\/4=3.75≠3 (a+c)*(b+c)\/c=10 用matlab的正确解法为 syms a b c real h=2.5;i=3;j=10;[a b c]=vpasolve(h==(a+b)\/c,i==(a+1)*(b+2)\/4,j==(a+c)*(b+c)\/c)运...

为什么用MATLAB解方程会出现错误啊?
由于Mathematica把方程的解表示为嵌套列表,因此不能把它作为其它数学结构的输入,但是有两种方法可以调用其中的值,而不必采用照抄或粘贴的方法.(a)如果希望利用由Solve得到的解计算表达式的值,可以利用取代运算符\/. ,这样Mathematica就会自动带入相应的值.(b)由于解就是列表,因此可以用Part或[[]]从列表...

matlab 解方程 后结果不对
你的代码没有问题。错就错在,提取变量计算值的位置不对。依次的顺序是 x: ,x1,x2,x3,y3,z1,z2 求解结果 验证结果

MATLAB解方程不对
2、最主要的问题出在函数返回值的顺序:solve函数返回多个参数时,顺序并不是你随便指定的(也不会根据你调用使用的符号智能确定),而是按照所求解方程中未知数的字母顺序返回的。也就是说,函数的正确调用方式是:>> [pa,pb,t,x]=solve('pa*x=36','pb*(1-x)=24','log10(pa)=6.95719-...

在线等,matlab解一元三次方程写完代码运行出错,请求大神帮助纠错_百度...
然后再往下说,你在为了解方程,把x定义成为了符号量 syms,这样你在plot的时候,就会报错说你的数据类型不对,其中一个是L,全部整数,另外一个是符号量,显然不对,所以我另外做了一个变量出来,就是刚刚说的xFinal。你解出来的x0,可能是很多值,你要从中找出符合条件的,你的条件是小于2的实数...

matlab solve解线性方程组为什么答案会不一样
两组方程的解都是第一个未知数=1\/2 第二个未知数=5\/2。只不过你返回值的命名不一样罢了。

MATLAB求解微分方程答案不对~~
matlab 考虑了复数, 导致结果复杂化.可以用不太严格的方法把复数域的解和实数域的解建立联系 这种情况下matlab的解只能用作参考.如果还是希望用matlab, 可以尝试用数值解法.也能达到很高的精确度.下面这张图是用数值解法(ode45)求解的.蓝线是y的数值解.红色记号是精确解.可以看到, 两者几乎重合, 说明...

matlab解4元二次方程组,不知道哪里出问题了,怎么都算不对.望各位大神求...
原因很简单,就是返回的参数值是按照你后边的顺序来。solve并没有保证说你结果跟你后边的参数顺序一致。所以改成下边这样:t1=0.0001241;t2=0.0001272;t3=0.0000313;a=0.3;b=0.45;syms x y r c eq1=x^2+(y-b)^2-(r+c*t1)^2;eq2=(x-a)^2+(y-b)^2-(r+c*t2)^2;eq3=x^...

matlab fsolve解方程结果不对?
[x, fval, exitflag, output] = fsolve(@root8d, x0, options);这里,x0 是你提供给fsolve的初始值。如果退出标志(exitflag)是正数,那么求解过程应该是收敛的。如果不是,你可能需要改变初始值或者调整其他求解选项。也可以尝试将求解器显示设置为“iter”(迭代),以便在求解过程中观察详细信息...

相似回答