Solving an inequation of first degree issue

2 visualizzazioni (ultimi 30 giorni)
Hello,
i am trying to solve this inequation:
a = 3*x + 21 <= 5*x + 13
the answer matlab is giving me when i use:
solve(a)
is 5. But the answer should be x>= 4. What i am doing wrong here?
Thanks

Risposta accettata

John D'Errico
John D'Errico il 1 Apr 2021
Modificato: John D'Errico il 1 Apr 2021
syms x
a = 3*x + 21 <= 5*x + 13
a = 
asol = solve(a,'returnconditions',true)
asol = struct with fields:
x: [1×1 sym] parameters: [1×1 sym] conditions: [1×1 sym]
asol.x
ans = 
x
asol.conditions
ans = 
It looks like x >= 4 is the solution.
When you have a problem with multiple solutions, certainly an inequality like this, you need to tell MATLAB to describe the solution properly. When all I do is use solve on a, what does it do? It gives me AN answer, a valid solution to the problem.
solve(a)
ans = 
5
Read the help docs for solve, where it explains the use of this property.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by