Solve Function - Having Difficulties

6 次查看(过去 30 天)
I'm having trouble using the solve function and I don't understand the problem. I looked at other posts + documentation but I still don't see it.
>> x = solve('x+4==2',x)
Error using solve>getEqns (line 418)
List of equations must not be empty.
Error in solve (line 226)
[eqns,vars,options] = getEqns(varargin{:});
This is the input I entered and the error I'm receiving.

采纳的回答

Stephan
Stephan 2019-7-4
syms x
xsol = solve(str2sym('x+4==2'),x)
  1 个评论
SJ Won
SJ Won 2019-7-4
What's the reason people use quotes for the mathematical expression? Isn't it easier just using x+4==2 ?

请先登录,再进行评论。

更多回答(1 个)

Vaibhav Tomar
Vaibhav Tomar 2019-7-4
Quotes are necessary as it's a string.
You need to use str2sym
str2sym(symstr) evaluates symstr where symstr is a string representing a symbolic expression. Enter symbolic expressions as strings only when reading expressions from text files or when specifying numbers exactly. Otherwise, do not use strings for symbolic input.
Use:
x=sym('x')
solx= solve(str2sym('x+4==2'),x)

类别

Help CenterFile Exchange 中查找有关 Food Sciences 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by