95  IF  ERROR  THEN 1310
100  P1=(4*ATN(1))/180
102  PRINT '10"INSTRUCTIONS (Y/N)  ?";
103  LINPUT Z$[1,1]
104  IF Z$#"Y" THEN 250
110  PRINT LIN(3)"THIS PROGRAM WILL PERFORM ARITHMETIC OPERATIONS"
120  PRINT "ON VECTORS EXPRESSED IN EITHER POLAR OR CATESIAN SYSTEMS"
130  PRINT 
140  PRINT "WHEN ASKED 'MODE?' TYPE 1 FOR POLAR COORDINATES"
150  PRINT "                   TYPE 2 FOR CARTESIAN COORDDNATES"
160  PRINT "WHEN ASKED 'OPERATION?' TYPE 1 FOR ADDITION"
170  PRINT "                        TYPE 2 FOR SUBTRACTION"
180  PRINT "                        TYPE 3 FOR MULTIPLICATION"
190  PRINT "                        TYPE 4 FOR DIVISION"
200  PRINT "WHEN ASKED 'AGAIN' TYPE 0 TO STOP THE PROGRAM"
210  PRINT "                   TYPE 1 TO CONTINUE PROGRAM"
220  PRINT "ALL ANGLES INPUT AND OUTPUT ARE IN DEGREES"
230  PRINT "ANSWERS ARE GIVEN IN BOTH POLAR AND CARTESIAN FORMS"
240  PRINT 
250  PRINT "MODE";
260  INPUT M
270  GOTO M OF 310,500
290  PRINT "YOU GOOFED! TRY AGAIN!"
300  GOTO 250
310  PRINT '10"MAGNITUDE #1";
320  INPUT A
330  PRINT '10"ANGLE #1";
340  INPUT B
350  PRINT '10"MAGNITUDE #2";
360  INPUT C
370  PRINT '10"ANGLE #2";
380  INPUT D
390  S=A
400  T=B
410  GOSUB 1010
420  X1=U
430  Y1=V
440  S=C
450  T=D
460  GOSUB 1010
470  X2=U
480  Y2=V
490  GOTO 680
500  PRINT '10"X #1";
510  INPUT X1
520  PRINT '10"Y #1";
530  INPUT Y1
540  PRINT '10"X #2";
550  INPUT X2
560  PRINT '10"Y #2";
570  INPUT Y2
580  U=X1
590  V=Y1
600  GOSUB 1040
610  A=S
620  B=T
630  U=X2
640  V=Y2
650  GOSUB 1040
660  C=S
670  D=T
680  PRINT '10"OPERATION";
690  INPUT O
700  IF O<1 THEN 870
710  IF O>1 THEN 750
720  GOSUB 1130
730  GOSUB 1040
740  GOTO 890
750  IF O>2 THEN 790
760  GOSUB 1160
770  GOSUB 1040
780  GOTO 890
790  IF O>3 THEN 830
800  GOSUB 1190
810  GOSUB 1010
820  GOTO 890
830  IF O>4 THEN 870
840  GOSUB 1250
850  GOSUB 1010
860  GOTO 890
870  PRINT '10"YOU GOOFED! TRY AGAIN!"
880  GOTO 680
890  PRINT 
900  PRINT "RESULTANT X = ";U
910  PRINT "RESULTANT Y = ";V
920  PRINT "RESULTANT MAGNITUDE = ";S
930  PRINT "RESULTANT AGNLE = ";T
940  PRINT 
950  PRINT '10"AGAIN";
960  INPUT Z
970  GOTO Z+1 OF 1310,250
990  PRINT '10"YOU GOOFED! TRY AGAIN!"
1000  GOTO 950
1010  U=S*COS(P1*T)
1020  V=S*SIN(P1*T)
1030  RETURN 
1040  IF U#0 THEN 1080
1050  S=ABS(V)
1060  T=SGN(V)*90
1070  RETURN 
1080  S=SQR(U^2+V^2)
1090  T=ATN(V/U)/P1
1100  IF U>0 THEN 1120
1110  T=T+180
1120  RETURN 
1130  U=X1+X2
1140  V=Y1+Y2
1150  RETURN 
1160  U=X1-X2
1170  V=Y1-Y2
1180  RETURN 
1190  S=A*C
1200  T=B+D
1210  IF S>0 THEN 1240
1220  S=-S
1230  T=T+180
1240  RETURN 
1250  S=A/C
1260  T=B-D
1270  IF S>0 THEN 1300
1280  S=-S
1290  T=T+180
1300  RETURN 
1310  CHAIN R,":*HELP"
1320  SYSTEM X,"BYE"
1330  END 
