5 REM POLY ADAPTED BY DSAA 10 PRINT "PROGRAM TO FIND POLYNOMIAL TO APPROXIMATE A TABLE" 11 PRINT "OFF X-Y DATA IN A MINIMUM RMS ERROR MANNER" 12 PRINT 15 DIM X(100),Y(100),A(11,11),B(11),C(11),P(22) 20 PRINT "DEGREE OF POLYNOMIAL N="; 25 INPUT N 26 PRINT "TYPE TERMINATOR VALUES" 27 INPUT T1,T2 30 PRINT "TYPE X-Y PAIRS."T1;","T2;" TERMINATES INPUT." 35 LET I=1 40 INPUT X(I),Y(I) 41 LET I=I+1 42 LET I9=I 43 REM POLY: POLYNOMIAL APPROXIMATION 45 IF X(I-1)<>T1 OR Y(I-1)<>T2 THEN 40 46 GOSUB 800 55 LET M=I-2 65 LET N2=2*N 70 FOR I=1 TO N2 75 LET P(I)=0 80 FOR J=1 TO M 85 LET P(I)=P(I)+X(J)^I 90 NEXT J 95 NEXT I 100 N1=N+1 105 FOR I=1 TO N1 110 FOR J=1 TO N1 115 K=I+J-2 120 IF K <= 0 THEN 135 125 LET A(I,J)=P(K) 130 GOTO 140 135 LET A(1,1)=M 140 NEXT J 145 NEXT I 150 LET B(1)=0 155 FOR J=1 TO M 160 LET B(1)=B(1)+Y(J) 165 NEXT J 170 FOR I=2 TO N1 175 LET B(I)=0 180 FOR J=1 TO M 185 LET B(I)=B(I)+Y(J)*X(J)^(I-1) 190 NEXT J 195 NEXT I 205 FOR K=1 TO N 210 LET K1=K+1 215 LET L=K 220 FOR I=K1 TO N1 225 IF ABS(A(I,K)) <= ABS(A(L,K)) THEN 235 230 LET L=I 235 NEXT I 238 IF L <= K THEN 280 240 FOR J=K TO N1 245 LET T=A(K,J) 250 LET A(K,J)=A(L,J) 255 LET A(L,J)=T 260 NEXT J 265 LET T=B(K) 270 LET B(K)=B(L) 275 LET B(L)=T 280 FOR I=K1 TO N1 285 LET F=A(I,K)/A(K,K) 290 LET A(I,K)=0 295 FOR J=K1 TO N1 300 LET A(I,J)=A(I,J)-F*A(K,J) 305 NEXT J 310 LET B(I)=B(I)-F*B(K) 315 NEXT I 320 NEXT K 325 LET C(N1)=B(N1)/A(N1,N1) 330 LET I=N 335 LET I1=I+1 340 LET S=0 345 FOR J=I1 TO N1 350 LET S=S+A(I,J)*C(J) 355 NEXT J 360 LET C(I)=(B(I)-S)/A(I,I) 365 LET I=I-1 370 IF I>0 THEN 335 375 PRINT 376 PRINT "POLYNOMIAL OF DEGREE"N 380 PRINT "COEFFICIENTS OF POLYNOMIAL SUMMATION A(I)*X^I" 385 PRINT "I","A(I)" 386 PRINT "------------------" 390 FOR I=1 TO N1 395 PRINT I-1,C(I) 400 NEXT I 410 PRINT 420 PRINT 430 PRINT "TYPE 1 TO GO TO NEXT HIGHER DEGREE" 440 PRINT "TYPE 2 TO ENTER MORE DATA" 450 PRINT "TYPE 3 TO CHANGE DEGREE" 460 INPUT K 470 IF K=1 THEN 550 480 IF K=2 THEN 600 490 IF K=3 THEN 700 500 GOTO 999 550 LET N=N+1 560 IF N<=11 THEN MAT A=ZER:MATB=ZER:MATC=ZER:MATP=ZER:GOTO65 570 PRINT "DEGREE GREATER THAN 11" 580 LET N=11 590 GOTO 430 600 LET I=19 610 PRINT "DEGREE OF POLYNOMIAL? (0 MEANS SAME DEGREE AS BEFORE" 620 INPUT K 630 IF K=0 THEN 40 640 IF K>11 THEN 570 650 LET N=K 660 GOTO 40 700 PRINT "DEGREE OF POLYNOMIAL?"; 710 INPUT N 720 GOTO 65 800 REM SUBROUTINE TO ORDER THE DATA 810 FOR I=1 TO I9-2 820 FOR J=I+1 TO I9-1 830 IF X(I)