Предмет: Информатика, автор: Кариночка78

Проанализируйте задачу решения биквадратного уравнения, составьте алгоритм и напишите программу на Паскале.

Ответы

Автор ответа: Аноним
0
Биквадратное уравнение имеет вид ax⁴+bx²+c=0
Замена z=y² приводит к уравнению az²+bz+c=0, способ решение которого хорошо известен. Поскольку в задании указан уровень "5-9 классы", варианты с комплексными корнями рассматриваться не будут, т.е. при отрицательном дискриминанте D мы считаем, что корней нет.
displaystyle D=b^2-4ac;  d= sqrt{D}  \ d textgreater  0 to z_{1,2}= frac{-bpm d}{2a}; \ 
d=0 to z_1=z_2= frac{d}{2a}  \ 
y= pmsqrt{z}

var
  a,b,c,d,z1,z2:real;
begin
  Writeln('Введите коэффициенты биквадратного уравнения по убыванию степеней');
  Read(a,b,c);
  d:=b*b-4*a*c;
  if d<0 then Writeln('Нет корней')
  else begin
    d:=sqrt(d);
    z1:=(-b-d)/(2*a);
    z2:=(-b+d)/(2*a);
    if z1<0 then begin
      z1:=z2;
      if z1<0 then Writeln('Нет корней')
      else Writeln(-sqrt(z1),' ',sqrt(z1))
      end
    else begin
      Write(-sqrt(z1),' ',sqrt(z1),' ');
      if z2>=0 then Writeln(-sqrt(z2),' ',sqrt(z2));
      Writeln
      end
    end
end.


Похожие вопросы
Предмет: Химия, автор: maksimklos2