100  REM ELECT, HP 36798A, 6/74, 3 PROGS: ELECT1,ELECT2,ELECT3
110  REM  *****  VERSION 2  *****  6/30/73  *****
120  REM  HISTORICAL ELECTIONS:  19TH CENTURY
130  DIM A$[9],B$[8],I[3],M[63],P[14],S[3],Y[7],Z$[3]
140  MAT  READ Y,M,P
150  PRINT TAB(30)"ELECT1"LIN(-1)
160  PRINT TAB(16)"HISTORICAL ELECTIONS - 19TH CENTURY"LIN(-1)
170  PRINT "NEED INSTRUCTIONS";
180  GOSUB 870
190  IF I THEN 230
200  PRINT "WANT A LIST OF YEARS";
210  GOSUB 870
220  GOTO I+1 OF 350,340
230  PRINT LIN(-2)"YOUR GOAL WILL BE TO CHOOSE THE OPTIMUM STRATEGY FOR"
240  PRINT "CANDIDATES IN AN HISTORICAL ELECTION.  EACH CANDIDATE'S"
250  PRINT "STRATEGY VECTOR CONSISTS OF 3 NUMBERS.  THE FIRST REPRESENTS"
260  PRINT "THE AMOUNT OF EMPHASIS TO BE PLACED ON THE CANDIDATE'S"
270  PRINT "IMAGE, THE SECOND REPRESENTS THE AMOUNT OF EMPHASIS ON PARTY"
280  PRINT "AFFILIATION, AND THE THIRD IS THE AMOUNT OF EMPHASIS ON"
290  PRINT "CAMPAIGN ISSUES.  EACH OF THESE NUMBERS IS BETWEEN 10 AND 80,"
300  PRINT "WITH A HIGHER NUMBER REPRESENTING MORE EMPHASIS.  THE TOTAL"
310  PRINT "OF EACH STRATEGY VECTOR MUST EQUAL 100!"
320  PRINT LIN(-1)"THE COMPUTER WILL FIRST ASK 'ELECTION YEAR?'"
330  PRINT "CHOOSE THE YEAR FROM THE FOLLOWING LIST:"
340  MAT  PRINT  USING "7(6D)";Y
350  PRINT LIN(-1)"ELECTION YEAR";
360  INPUT I
370  FOR E=1 TO 7
380  IF Y[E]=I THEN 410
390  NEXT E
400  GOTO 330
410  X=E*9-9
420  PRINT LIN(-1);TAB(14)"ELECTION OF"Y[E];LIN(-1)
430  PRINT "CANDIDATE       PARTY"
440  RESTORE 1010
450  FOR I=1 TO E
460  READ A$,B$
470  NEXT I
480  IF E<7 THEN 510
490  PRINT A$;TAB(14)"REPUBLICAN"LIN(1);B$;TAB(14)"DEMOCRAT"
500  GOTO 580
510  PRINT A$;TAB(14)"DEMOCRAT"LIN(1);B$;TAB(14);
520  GOTO E OF 550,570,570
530  PRINT "REPUBLICAN"
540  GOTO 580
550  PRINT "NATIONAL ";
560  GOTO 530
570  PRINT "  WHIG"
580  PRINT LIN(-1);A$;
590  GOSUB 760
600  MAT S=I
610  PRINT B$;
620  GOSUB 760
630  A1=0
640  FOR J=1 TO 3
650  A1=A1+I[J]*(S[1]*M[X+J]+S[2]*M[X+J+3]+S[3]*M[X+J+6])
660  NEXT J
670  A1=(A1/100-100)/4
680  PRINT LIN(-2)"THE RESULT OF YOUR STRATEGY IS:"LIN(1);A$;TAB(14);
690  PRINT A1" %"LIN(1);B$;TAB(14);100-A1" %"LIN(2)"THE VOTE FOR THE";
700  PRINT " TWO MAJOR CANDIDATES IN THE ACTUAL ELECTION WAS:"
710  PRINT A$;TAB(14);P[2*E-1]" %"LIN(1);B$;TAB(14);P[2*E]" %"LIN(-2)
720  PRINT "ANOTHER RUN";
730  GOSUB 870
740  IF I THEN 350
750  STOP 
760  PRINT " - STRATEGY (3 NUMBERS, 10 <= I <= 80, TOTAL = 100)";
770  INPUT I[1],I[2],I[3]
780  FOR I=1 TO 3
790  IF I[I]<10 OR I[I]>80 THEN 830
800  NEXT I
810  IF I[1]+I[2]+I[3]#100 THEN 850
820  RETURN 
830  PRINT "NUMBER OUT OF RANGE"
840  GOTO 760
850  PRINT "THE TOTAL OF EACH STRATEGY VECTOR MUST EQUAL 100!"
860  GOTO 760
870  I=1
880  INPUT Z$
890  IF Z$[1,1]="Y" THEN 940
900  IF Z$[1,1]="N" THEN 930
910  PRINT "WHAT";
920  GOTO 880
930  I=0
940  RETURN 
950  DATA 1828,1840,1844,1868,1876,1884,1896
960  DATA 4,3,3,3,2,2,3,3,3,2,3,3,3,4,3,3,3,3,1,2,3,2,4,4,3,4,5
970  DATA 1,3,3,3,4,3,3,3,3,2,2,3,2,3,3,3,3,4,4,3,3,3,2,2,3,2,3
980  DATA 2,3,3,3,4,4,3,4,3
990  DATA 56,44,47,53,50.7,49.3,47.3,52.7,51.5,48.5
1000  DATA 50.1,49.9,52.2,47.8
1010  DATA "JACKSON","ADAMS","VAN BUREN","HARRISON","POLK","CLAY"
1020  DATA "SEYMOUR","GRANT","TILDEN","HAYES","CLEVELAND","BLAINE"
1030  DATA "MC KINLEY","BRYAN"
9999  END 
