1  REM ****  HP BASIC PROGRAM LIBRARY  ******************************
2  REM
3  REM       TRIFAC: FACTORING QUADRATIC TRINOMIALS
4  REM
5  REM       36237 REV A
6  REM
7  REM ****  CONTRIBUTED PROGRAM  ***********************************
10  REM          ALGEBRA ONE:  FACTORING TRINOMIALS
20  REM
30  REM          TAPE INPUT VERSION (WORK AT SEATS
40  REM          PROGRAMMER:  M.S.BOLDUAN
50  REM
60  REM          DATA LINES ARE 600 THROUGH 625. ENTER 
70  REM          DATA AS FOLLOWS:  COEFFICIENTS OF 
80  REM          TRINOMIAL, THEN COEFFICIENTS OF EACH FACTOR
90  REM
100  REM
110  PRINT "DO YOU WANT DIRECTIONS";
120  DIM A$[10]
130  INPUT A$
140  IF A$="YES" THEN 450
150  DIM A[10],M[50]
155  REM
160  REM *************PICK RANDOM NO. OF PROBLEMS TO DO**********
165  REM
170  PRINT "WHAT'S YOUR LUCKY NUMBER";
180  INPUT L
190  G=INT(RND(0)*L)+6
200  PRINT '10'10"YOU WILL BE DOING ";G;"PROBLEMS"'10'10
210  N=G
220  J=1
230  W=X=R1=0
240  FOR C1=1 TO N
250  PRINT "NO. ";X+1
255  REM
260  REM ************CHOOSES COEFF OF ANSWERS ****************
265  REM
270  FOR I=1 TO 4
280  S=INT(RND(0)*2)
290  IF S=0 THEN 330
300  A[I]=INT(RND(0)*7)+1
310  IF A[I]=0 THEN 270
320  GOTO 340
330  A[I]=-INT(RND(0)*7)+1
335  IF A[I]=0 THEN 270
340  NEXT I
345  REM
350  REM***********SETS UP COEFF OF TRINOMIAL TO BE FACTORED*********
355  REM
360  P=A[1]*A[3]
370  Q=A[2]*A[3]+A[4]*A[1]
380  R=A[2]*A[4]
382  IF P>0 THEN 400
384  P=-P
385  REM
386  R=-R
390  REM *****           PRINTS PROBLEMS          *********
395  REM
400  PRINT P;"*X^2 + ";Q;"*X + ";R
410  X=X+1
420  NEXT C1
430  PRINT "NOW RETURN TO YOUR SEAT TO WORK ON THESE."
440  END 
450  PRINT "IN THIS PROGRAM YOU'LL BE GIVEN SOME TRINOMIALS"
460  PRINT "WHICH ARE TO BE FACTORED. IN EACH CASE THE FACTORS"
470  PRINT "WILL BE TWO BINOMIALS. (WE'LL IGNORE ANY COMMON"
480  PRINT "FACTORS WHICH MAY APPEAR.) AFTER YOU HAVE YOUR"
490  PRINT "LIST OF PROBLEMS,RETURN TO YOUR SEAT TO SOLVE THEM"
500  PRINT "THEN SEE YOUR TEACHER FOR THE WAY TO MAKE A TAPE WITH"
510  PRINT "YOUR ANSWERS ON IT. WHEN YOU HAVE YOUR TAPE DO"
520  PRINT "THE FOLLOWING SERIES OF STEPS:"'10'10
530  PRINT "     A)  AT THE ON-LINE TTY TYPE     GET-TRIFAC"
531  PRINT "     B)  TYPE  TAPE"
532  PRINT "     C)  PUT YOUR TAPE IN THE READER AND TURN IT ON"
533  PRINT "     D)  WHEN TAPE IS THROUGH, TYPE    KEY"
534  PRINT "     E)  TYPE     RUN-600"
570  GOTO 150
580  END 
597  REM
598  REM             CHECKING PART
599  REM
600  DATA 4,-8,3,2,-1,1,-3
601  DATA 12,-2,-2,4,2,1,-1
602  DATA 6,11,3,3,1,2,3
603  DATA 12,-8,1,9,9,9,9
604  DATA 35,41,12,9,9,9,9
605  DATA 8,-22,5,4,-1,2,-5
606  DATA 7,20,12,9,9,9,9
607  DATA 2,9,4,4,4,4,4
608  DATA 2,8,6,1,0,0,3
630  PRINT "HOW MANY PROBLEMS DID YOU DO";
640  INPUT N
650  X=1
660  R1=0
670  FOR C1=1 TO N
680  READ P,Q,R,A,B,C,D
690  PRINT "NO. ";X
700  PRINT P;"*X^2 + ";Q;"*X + ";R
710  PRINT A;"*X + ";B;"AND";C;"*X + ";D;
720  IF A*C#P OR B*C+A*D#Q OR B*D#R THEN 770
730  PRINT "ARE CORRECT."
740  X=X+1
750  R1=R1+1
760  GOTO 790
770  PRINT "ARE INCORRECT."
780  X=X+1
790  NEXT C1
800  PRINT "YOU GOT ";R1"RIGHT OUT OF ";X-1;". THIS IS ";
805  PRINT (R1/(X-1))*100;" PERCENT."
820  IF R1=X-1 THEN 850
830  PRINT "CORRECT YOUR ERRORS ON THIS PAPER AND TURN IT IN FOR CREDIT."
840  GOTO 860
850  PRINT "YOU SURE KNOW HOW TO FACTOR TRINOMIALS! GOOD WORK!"
860  END 
