// PascalABC.NET 3.3, сборка 1547 от 07.10.2017 // Внимание! Если программа не работает, обновите версию!
procedure (a,b,c:real; var Корни:(real,real); var ЧислоКорней:integer); begin if a=0 then ЧислоКорней:=0 else begin var D:=b*b-4*a*c; if D>0 then begin var p1:=-b/2/a; var p2:=Sqrt(D)/2/a; Корни:=(p1-p2,p1+p2); ЧислоКорней:=2 end else if D=0 then begin var p1:=-b/2*a; Корни:=(p1,p1); ЧислоКорней:=1 end else ЧислоКорней:=0 end end;
begin var (a,b,c):=ReadReal3('Коэффициенты биквадратного уравнения a,b,c:'); var Корни:=(0.0,0.0); var ЧислоКорней:=0; (a,b,c,Корни,ЧислоКорней); if ЧислоКорней=0 then Writeln('Нет корней') else begin var НомерКорня:=1; var r:=Корни[0]; if r>0 then begin Writeln('x1=',-Sqrt(r),', x2=',Sqrt(r)); НомерКорня:=3 end else if r=0 then begin Writeln('x1=0'); НомерКорня:=2 end; r:=Корни[1]; if r>0 then Writeln('x',НомерКорня,'=',-Sqrt(r),', x',НомерКорня+1,'=',Sqrt(r)) else if r=0 then Writeln('x',НомерКорня,'=0'); end end.