谁能帮我用Matlab编个程序解一元三次方程
能帮我用MATLAB编个程序解个一元三次方程么?方程形式为a*x^3+b*x^2+c*x+d=0我知道用solve很容易解但是我是想能用一个程序一运行就是输入abcd的值...
能帮我用MATLAB编个程序解个一元三次方程么?
方程形式为 a*x^3+b*x^2+c*x+d=0
我知道用solve很容易解 但是我是想能用一个程序一运行就是输入abcd的值,然后直接出结果。不用每次都自己再输入solve('ax^3+b*x^2+c*x+d=0');请高手帮忙! 展开
方程形式为 a*x^3+b*x^2+c*x+d=0
我知道用solve很容易解 但是我是想能用一个程序一运行就是输入abcd的值,然后直接出结果。不用每次都自己再输入solve('ax^3+b*x^2+c*x+d=0');请高手帮忙! 展开
2个回答
展开全部
把算法隐藏,还是用SOLVE函数,新建sv.m文件,代码如下:
function y = sv(a,b,c,d)
y = solve([num2str(a),'*x^3','+',...
num2str(b),'*x^2','+',...
num2str(c),'*x^1','+',...
num2str(d),'=0']);
输入sv(1,3,3,1)试下?
function y = sv(a,b,c,d)
y = solve([num2str(a),'*x^3','+',...
num2str(b),'*x^2','+',...
num2str(c),'*x^1','+',...
num2str(d),'=0']);
输入sv(1,3,3,1)试下?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用roots函数,例如
clc;clear
syms x
f=x^3-6*x^2+11*x-6
p=sym2poly(f)
x=roots(p)
结果:
f =
x^3-6*x^2+11*x-6
p =
1 -6 11 -6
x =
3.0000
2.0000
1.0000
clc;clear
syms x
f=x^3-6*x^2+11*x-6
p=sym2poly(f)
x=roots(p)
结果:
f =
x^3-6*x^2+11*x-6
p =
1 -6 11 -6
x =
3.0000
2.0000
1.0000
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询