matlab求解一元二次方程,带变量的

学习 时间:2026-04-08 01:18:18 阅读:6460
matlab求解一元二次方程,带变量的matlab设计M文件,以下是部分程序:x0=1;for t=0:0.2:2x=solve('x=x0-0.2x^2+0.2*t','x');x0=x;solve那一步应该有问题吧,运行出错,

最佳回答

温婉的鸵鸟

自由的巨人

2026-04-08 01:18:18

存在问题:1、要解的方程不能写在字符串里面,那样变量t不能起作用;2、方程中0。2x^2项缺乘号;3、关于x的二次方程有两个根,需要选择其中一个才能进行迭代。 建议代码:x0=1;syms xfor t=0:0。2:2    x0 = solve(-x+x0-0。2*x^2+0。2*t,x);    x0 = max(double(x0))end 再问: 我还想把每次计算的结果存入矩阵中,下面的程序有什么错误呢x0=1;m=1;syms x;for t=0:0。2:2 x=solve(-x+x0-0。2*x^2+0。2*t,x); x=max(double(x)); X(m,:)=x; 再答: 你的m在循环中没有变啊? 参考代码:x0 = 1;syms xT = 0:0。2:2;X = T*0;for m=1:length(T)    t = T(m);    x0 = solve(-x+x0-0。2*x^2+0。2*t,x);    x0 = max(double(x0));    X(m) = x0;endplot(T,X,'。-')

最新回答共有2条回答

  • 美好的棉花糖
    回复
    2026-04-08 01:18:18

    存在问题:1、要解的方程不能写在字符串里面,那样变量t不能起作用;2、方程中0。2x^2项缺乘号;3、关于x的二次方程有两个根,需要选择其中一个才能进行迭代。 建议代码:x0=1;syms xfor t=0:0。2:2    x0 = solve(-x+x0-0。2*x^2+0。2*t,x);    x0 = max(double(x0))end 再问: 我还想把每次计算的结果存入矩阵中,下面的程序有什么错误呢x0=1;m=1;syms x;for t=0:0。2:2 x=solve(-x+x0-0。2*x^2+0。2*t,x); x=max(double(x)); X(m,:)=x; 再答: 你的m在循环中没有变啊? 参考代码:x0 = 1;syms xT = 0:0。2:2;X = T*0;for m=1:length(T)    t = T(m);    x0 = solve(-x+x0-0。2*x^2+0。2*t,x);    x0 = max(double(x0));    X(m) = x0;endplot(T,X,'。-')

上一篇 划分句子成分:i shall be 25 years old next year

下一篇 某村果园里,1/2的面积植了梨树,1/4的面积种了苹果树,其余4公顷地种植了桃树,这个果园共有多少公%