📄 qroot.dem
字号:
PROGRAM d9r12(input,output);
(* driver for routine QROOT *)
CONST
n=7;
nv=3;
eps=1.0e-6;
ntry=10;
tiny=1.0e-5;
TYPE
glnarray = ARRAY [1..n] OF real;
glnvarray = ARRAY [1..nv] OF real;
VAR
i,j,nflag,nroot : integer;
p : glnarray;
b,c : ARRAY [1..ntry] OF real;
(*$I MODFILE.PAS *)
(*$I POLDIV.PAS *)
(*$I QROOT.PAS *)
BEGIN
p[1] := 10.0; p[2] := -18.0; p[3] := 25.0; p[4] := -24.0;
p[5] := 16.0; p[6] := -6.0; p[7] := 1.0;
writeln;
writeln('P(x) := x^6-6x^5+16x^4-24x^3+25x^2-18x+10');
writeln('Quadratic factors x^2+bx+c');
writeln;
writeln('factor':6,'b':10,'c':12);
writeln;
nroot := 0;
FOR i := 1 to ntry DO BEGIN
c[i] := 0.5*i;
b[i] := -0.5*i;
qroot(p,n,b[i],c[i],eps);
IF (nroot = 0) THEN BEGIN
writeln(nroot:4,' ',b[i]:12:6,c[i]:12:6);
nroot := 1
END ELSE BEGIN
nflag := 0;
FOR j := 1 to nroot DO BEGIN
IF ((abs(b[i]-b[j]) < tiny)
AND (abs(c[i]-c[j]) < tiny))
THEN nflag := 1
END;
IF (nflag = 0) THEN BEGIN
writeln(nroot:4,' ',b[i]:12:6,c[i]:12:6);
nroot := nroot+1
END
END
END
END.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -