ANULARE - Ecuatia de gradul al doilea

Fie ecuatia . Aceasta ecuatie pune probleme. Anularea poate apare daca .

Pentru rezolvare vom folosi formula

format long

a=1; c=1; b=-100000000; %b=-1e8

% Calculam radacinile obisnuit

x1=(-b+sqrt(b^2-4*a*c))/(2*a)

x1 =    100000000

x2=(-b-sqrt(b^2-4*a*c))/(2*a)

x2 =      7.450580596923828e-09

Apare anulare la calculul lui . Remediu: amplificam cu conjugata

x1=(-b+sqrt(b^2-4*a*c))/(2*a)

x1 =    100000000

x2a=2*c/(-b+sqrt(b^2-4*a*c))

x2a =      1.000000000000000e-08

Acelasi rezultat se obtine cu roots

x=roots([a,b,c]);

x(1),x(2)

ans =      9.999999999999999e+07
ans =      1.000000000000000e-08

Altfel, folosim relatiile lui Viete,

d = sqrt(b^2 - 4*a*c);

x1 = (-b - sign(b)*d) / (2*a)

x1 =    100000000

x2 = c/a/x1

x2 =      1.000000000000000e-08