作业帮 > 综合 > 作业

matlab解二元一次方程问题

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/10/03 02:23:16
matlab解二元一次方程问题
m=[2 2 1.75 1.75]; b=[28 25 25 29];c=[3.4 1.95 1.3 0.85];for i=1:4 [x,y]=solve('c(i)=(y/x)*(45/14)','67=((x+y)*m(i))/(2*cos(b(i)/180*pi))','x,y'); disp(x); disp(y);end
为什么结果是这样的:(6030*cos((pi*b(i))/180))/(m(i)*(14*c(i) + 45)) (1876*c(i)*cos((pi*b(i))/180))/(45*m(i) + 14*c(i)*m(i)) (6030*cos((pi*b(i))/180))/(m(i)*(14*c(i) + 45)) (1876*c(i)*cos((pi*b(i))/180))/(45*m(i) + 14*c(i)*m(i)) (6030*cos((pi*b(i))/180))/(m(i)*(14*c(i) + 45)) (1876*c(i)*cos((pi*b(i))/180))/(45*m(i) + 14*c(i)*m(i)) (6030*cos((pi*b(i))/180))/(m(i)*(14*c(i) + 45)) (1876*c(i)*cos((pi*b(i))/180))/(45*m(i) + 14*c(i)*m(i))?
matlab解二元一次方程问题
这样就对了.
m=[2 2 1.75 1.75]; b=[28 25 25 29];c=[3.4 1.95 1.3 0.85];
for i=1:4
syms x y
[x,y]=solve(c(i)-(y/x)*(45/14),67-((x+y)*m(i))/(2*cos(b(i)/180*pi)),'x','y');
X=double(x)
Y=double(y)
end
再问: 能大概说明一下原因么?为什么加个 X=double(x), Y=double(y)就可以算了?
再答: solve()函数是符号运算,double(x)是将符号变量x变成数值变量X。 另外,你也可用于用函数fsolve(),这个函数是数值运算。
再问: y(i)=(A(i)-67)/m(i); end y = [ -3137865612613/35184372088832, 67146069709769/140737488355328, 49589943881657/70368744177664] 请您再看看这个(前面删掉了一些)。其他结果都是小数,为什么y的结果是这样的?为什么把y换成其他字母就能正常显示四位小数了?