24小时热门版块排行榜    

查看: 319  |  回复: 3
当前主题已经存档。

ime阳光

木虫 (小有名气)

[交流] 【求助】有关一个方程的解

先编了一个小程序:
a=1; b=2; x=solve('a+x=b')
MATLAB计算的结果是x =b - a;
而我想得到的是x=1;
还请各位高手不吝赐教。
另外如果我想用for循环,对a赋值,然后解方程,得到一系列的x,应该如何做。
谢谢大家的指教!
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

redcrag

木虫 (著名写手)

如果想得到是数值,就不要用符号计算。
for循环的用法很参考http://matlab.net.cn/Html/Article/basic/24166286.html
http://redcrag.spaces.live.com/
2楼2010-03-26 09:30:31
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fspdlh

金虫 (正式写手)

ime阳光(金币+10): 2010-03-31 08:51
>> ans=solve('a+x=b','a=1','b=2')

ans =

    a: [1x1 sym]
    b: [1x1 sym]
    x: [1x1 sym]

>> ans.x

ans =

1


>>
3楼2010-03-29 19:53:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fspdlh

金虫 (正式写手)

ime阳光(金币+10): 2010-03-31 08:50
我这应该算是个笨办法,不过能实现lz的目的
function y=main()
for i=1:10
    fun=cat(2,'a=',num2str(i));
    ans=solve('a+x=b',fun,'b=2');
    y(i)=ans.x;
end


>> main

ans =

[  1,  0, -1, -2, -3, -4, -5, -6, -7, -8]
4楼2010-03-29 20:00:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ime阳光 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见