![]() |
[求助]程序:a=3; x=solve('1+2+x+a=9') 结果: x=6-a
程序:
a=3; x=solve('1+2+x+a=9') 结果: x=6-a 请问为什么不是3呢,也就是a在结果中为什么没被赋值? 请大家指点 谢谢!! |
回复: 新手求助!
solve中的是一个字符串表达式,用单引号括起来的,那么外面的任何变量都是赋不进此字符串的,则solve的结果也是以符号形式给出的,你可以看一下,你的结果的x的类型是sym型的,想把a=3赋进字符串有一个办法:
a=3; x=solve(['1+2+x+',num2str(a),'=9'],'x'); 结果是: x = 3 其中就是用num2str把a转换成字符了,达到赋值传递的目的。:redface: |
回复: 新手求助!
十分感谢!!
|
回复: 新手求助!
a=3;
x=solve('1+2+x+a=9'); x=eval(x) |
所有时间均为北京时间。现在的时间是 05:13。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.