how to solve quadratic equation?
1.279 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
bsd
am 8 Nov. 2011
Beantwortet: Temidayo Daniel
am 18 Okt. 2022
Hai,
How could I solve a quadratic equation in matlab? Looking for your reply.
BSD
0 Kommentare
Akzeptierte Antwort
Walter Roberson
am 8 Nov. 2011
roots(). Or if you have the symbolic toolbox, solve()
4 Kommentare
Walter Roberson
am 9 Nov. 2011
You can tell whether a number has a complex part or not by testing to see if the imaginary part is 0. imag(x) gives you the imaginary part of x, so imag(x)==0 tests whether the imaginary part is 0. TheRoots(imag(TheRoots)==0) thus selects only the roots which are real-valued with no imaginary component.
Of course for a quadratic function over real coefficients, either _neither_ root is complex or _both_ roots are complex...
Weitere Antworten (4)
Reina Young
am 27 Mai 2020
This code works for real and imaginary roots.
%%QUADRATIC FORMULA%%
% A(x^2)+B(x)+C=0
begin_prompt = 'Quadratic Formaula (Yes/No)(1/0)';
d = input(begin_prompt)
if d == 1
prompt = 'Ax^2+Bx+C=0...A=';
A = input(prompt)
prompt2 = 'Ax^2+Bx+C=0...B=';
B = input(prompt2)
prompt3 = 'Ax^2+Bx+C=0...C=';
C = input(prompt3)
Answer1= ((-B)+((B^2-4*A*C))^0.5)/(2*A)
Answer2= ((-B)-((B^2-4*A*C))^0.5)/(2*A)
disp(Answer1)
disp(Answer2)
else
disp( 'Error in Start Prompt Input, Please Pick Yes (1) or this code will not work');
end
0 Kommentare
Emre Komur
am 10 Apr. 2021
Bearbeitet: Emre Komur
am 10 Apr. 2021
Solution Method-1
1- You can create function as below
function quadraticEquation
a = input('please enter a value :');
b = input('please enter b value :');
c = input('please enter a value :');
delta = (b.^2)-(4*a*c);
if(delta < 0)
disp("Delta < 0 The equation does not have a real root");
elseif (delta == 0)
disp('The equation has only one real roots');
disp(-b./(2*a));
else
disp('The equation has two real roots');
disp((-b+sqrt(delta))./(2*a));
disp((-b-sqrt(delta))./(2*a));
end
end
2- You should call the function as below
quadraticEquation
0 Kommentare
Rick Rosson
am 8 Nov. 2011
Please try:
x = zeros(2,1);
d = sqrt(b^2 - 4*a*c);
x(1) = ( -b + d ) / (2*a);
x(2) = ( -b - d ) / (2*a);
HTH.
Rick
4 Kommentare
Rick Rosson
am 9 Nov. 2011
If a = 0, then it is not (strictly speaking) a quadratic equation. It's a linear equation, and the solution in that case is trivial to compute.
Walter Roberson
am 9 Nov. 2011
Yes, but it is not an uncommon problem for people to calculate or randomly generate the coefficients and forget to double-check that the system is still of the same order.
Temidayo Daniel
am 18 Okt. 2022
a = input ('Enter the value of the coefficient of x square ');
b = input ('Enter the value of the coefficient of x ');
c = input ('Enter the third value ');
t = sqrt ((b^2) - (4*a*c));
u = (-b+t)/(2*a);
v = (-b-t)/(2*a);
x1 = u
x2 = v
0 Kommentare
Siehe auch
Kategorien
Mehr zu Quadratic Programming and Cone Programming finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!