Quadratic question using the function command

88 vues (au cours des 30 derniers jours)
Chris
Chris le 25 Juin 2013
Commenté : Walter Roberson le 27 Déc 2019
Without using the roots command, write a function to calculate roots of the quadratic equation
ax^2+bx+c
Inputs to the function should be the coefficients a, b and c and output should
be the roots. Test your program by setting a=2, b=3 and c= -1
So I know i have to have two files. One with the quadratic equations and the other script recalls the function. Heres What I have so far.
function x=quad_equation(a,b,c)
x(1)=(-b+sqrt(b.^2-4.*a.*c))/(2.*a)
x(2)=(-b-sqrt(b.^2-4.*a.*c))/(2.*a)
Thats the first file
a=3;
b=3;
c=-1;
function outputs=quad_equation(a,b,c)
output=fzero(
And I am lost on what to do with the second file

Réponse acceptée

Walter Roberson
Walter Roberson le 25 Juin 2013
In MATLAB, files that define functions must have "function" as the first non-comment word in the file; if you put assignments before the "function" statement then you will get an error about function definitions not permitted in that context.
  2 commentaires
Chris
Chris le 25 Juin 2013
function fx=quad_function(a,b,c)
a=3
b=2
c=-1
a_root=fzero(quad_function,a)
b_root=fzero(fx,b)
c_root=fzero(fx,c)
Alrght so I got this but how do I find the roots of the function?
Walter Roberson
Walter Roberson le 27 Déc 2019
function fx = quad_function
a=3;
b=2;
c=-1;
fx = quad_equation(a, b, c);
end

Connectez-vous pour commenter.

Plus de réponses (1)

abhirup chowdhury
abhirup chowdhury le 27 Déc 2019
function fx=quad_function(a,b,c)
a=3
b=2
c=-1
a_root=fzero(quad_function,a)
b_root=fzero(fx,b)
c_root=fzero(fx,c)
  1 commentaire
Walter Roberson
Walter Roberson le 27 Déc 2019
Yes? That duplicates what Chris posted in 2013 ?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Get Started with MATLAB dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by