margarita25061961
?>

Кумир написать программу в кумире! Написать программу в кумире для рисования m рядов по n фрагментов в ряду. Расстояние между фрагментами 1 клеточка.

Информатика

Ответы

sindika
Биквадратное уравнение имеет вид ax⁴+bx²+c=0
Замена z=y² приводит к уравнению решение которого хорошо известен. Поскольку в задании указан уровень "5-9 классы", варианты с комплексными корнями рассматриваться не будут, т.е. при отрицательном дискриминанте D мы считаем, что корней нет.
\displaystyle D=b^2-4ac; \ d= \sqrt{D} \\ d\ \textgreater \ 0 \to z_{1,2}= \frac{-b\pm d}{2a}; \\ 
d=0 \to z_1=z_2= \frac{d}{2a} \\ 
y= \pm\sqrt{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.
si0000
var a, b, c, D, x, y: real;
begin
 readln(a, b, c); {ax^4 + bx^2 + c = 0}
 if a = 0 then
 writeln('Non-bisquare')
 else
 begin
  D := b * b - 4 * a * c;
  if D < 0 then
  writeln('No solutions')
  else
  begin if D = 0 then
   begin x := -b / 2 / a;
    if x < 0 then
     writeln('No solutions')
    else writeln('2 solutions: ', sqrt(x), ' ', -sqrt(x));
   end
   else
   begin x := (-b + sqrt(D)) / 2 / a;
    y := (-b - sqrt(D)) / 2 / a;
    if x < 0 then writeln('No solutions');
    if x = 0 then
     writeln('1 solution: 0');
    if (x > 0) and (y < 0) then
     writeln('2 solutions: ', sqrt(x):0:3, ' ', -sqrt(x):0:3);
    if (x > 0) and (y = 0) then
     writeln('3 solutions: ', sqrt(x):0:3, ' ', -sqrt(x):0:3, ' 0');
    if y > 0 then
     writeln('4 solutions: ', sqrt(x):0:3, ' ', -sqrt(x):0:3, ' ', sqrt(y):0:3, ' ', -sqrt(y):0:3);
   end;
  end;
 end;
end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Кумир написать программу в кумире! Написать программу в кумире для рисования m рядов по n фрагментов в ряду. Расстояние между фрагментами 1 клеточка.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

det-skazka55
Yulechkaakulova1993
Поликарпова-Мазурова
makitra08
palosik7621
Ulianev77
perovd8111
sindika
Emasterova77
mihalewanadia20176987
maroseyka
rytikovabs
Dmitriy2211104
irinakuznetsova994741
Шабунина-Евгения1883