How to take an equation as input from user and read the coefficient from it?

3 次查看(过去 30 天)
How to take an equation as input from user and read the coefficient from it?

回答(1 个)

Walter Roberson
Walter Roberson 2016-12-27
If you have the Symbolic toolbox, then you could convert the string representing the equation to a function handle using str2func() and then you could pass symbolic arguments to it to get a symbolic representation of it.
At that point, if the equation is known to represent a polynomial, then you can use coeffs() to get the coefficients.
If the equation is not known to represent a polynomial then you can use children() to break it into pieces, and examine the pieces using symvar() to determine whether they contain the variable of interest. However, in such a case it gets tricky to define what the coefficients are. For example, for sin(2*x) it is not really correct to say that the coefficient of x is 2.

Community Treasure Hunt

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

Start Hunting!

Translated by