谁能帮我用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');请高手帮忙!
展开
 我来答
泊进√62a8648
2009-06-22 · TA获得超过501个赞
知道小有建树答主
回答量:257
采纳率:0%
帮助的人:287万
展开全部
把算法隐藏,还是用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)试下?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
化学工程
2009-06-28 · TA获得超过8897个赞
知道大有可为答主
回答量:2212
采纳率:80%
帮助的人:3296万
展开全部
用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
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式