100  REM   MALAR -- SIMULATION OF ATTACK PHASE TREATMENT
110  REM   OF A MALARIA EPIDEMIC
120  REM   BASED ON COSTS SUPPLIED THROUGH THE W.H.O. 
130  REM   ORIGINAL CONCEPT - A. FRISHMAN 
140  REM   DEVELOPED BY - J. FRIEDLAND
150  REM   PROGRAMMING - J. FRIEDLAND, S. HOLLANDER 
160  REM   COPYRIGHT 1972 - STATE UNIVERSITY OF NEW YORK
170  REM   LATEST REVISION 12/6/72
180  REM  MALAR, HP 36797A, 2/74
200  PRINT "DO YOU REQUIRE INSTRUCTIONS FOR MALAR (1=YES, 0=NO)";
210  INPUT Q
220  IF Q=0 THEN 400
230  IF Q <> 1 THEN 200
240  PRINT "CURRENT CONDITIONS:"
245  PRINT "      APPROX. POP. OF AREA:100000"
250  PRINT "      APPROX. NO. ILL WITH MALARIA:25000"
255  PRINT "      APPROX. NO. DEATHS/YR DUE TO MALARIA:1000"
260  PRINT 
265  PRINT "TO CORRECT THIS SITUATION YOU CAN:"
270  PRINT "      ISOLATE THOSE ILL IN QUARANTINE HOSPITALS"
275  PRINT "      ADMINISTER DRUGS TO THOSE ILL"
280  PRINT "      APPLY PESTICIDES TO KILL MOSQUITOES"
285  PRINT "      GIVE PREVENTIVE DRUGS TO THOSE STILL HEALTHY"
290  PRINT 
295  PRINT "THESE ARE THE APPROX. COSTS:"
300  PRINT "      FIELD HOSPITAL OF 20 BEDS: $2000 PER YEAR"
305  PRINT "      DRUG TREATMENT FOR ILL: $2 PER PERSON FOR 1 YR."
310  PRINT "      FULL ANTI-MOSQUITO SPRAY:$ 75000 FOR 1 YEAR"
315  PRINT "          WHEN USING DDT, OTHER SPRAYS HIGHER COST"
320  PRINT "      PREVENTIVE DRUG EFFECTIVE 1 YR.:72 CENTS PER PERSON"
330  PRINT 
335  PRINT "CONSULT YOUR STUDENT MANUAL FOR FURTHER INFORMATION"
400  PRINT "YOU MAY USE MALAR EITHER WITH A BUDGET (VERSION 1)"
410  PRINT "OR WITHOUT A BUDGET (VERSION 2). VERSION NUMBER";
412  C=0
415  INPUT Z9
420  IF (Z9-1)*(Z9-2) <> 0 THEN 400
430  DEF FNR()=COS(6.283*RND(0))*SQR(-2*LOG(RND(0)))
435  DIM Y[4,5]
440  LET N=0
445  READ S2,S4
450  READ S1,S5,S6,E1,E2,E3,E4
455  FOR Z=1 TO 4
456  FOR X=1 TO 5
460  LET Y[Z,X]=0
462  NEXT X
465  NEXT Z
470  IF N <> 0 THEN 495
475  READ C7,C6,G
480  DATA 0,0,0,0,0,0,0,0,0,500000.,500000.,0
485  IF Z9=1 THEN 495
490  LET C6=0
495  LET C8=C6
500  PRINT 
505  PRINT "YOUR OBJECTIVE IS TO MINIMIZE MALARIA FOR THE NEXT"
510  IF Z9=2 THEN 525
515  PRINT "5 YEARS, WITH A TOTAL FUND OF ";C6/1000;" THOUSAND DOLLARS"
520  GOTO 530
525  PRINT "FIVE YEARS."
530  GOSUB 1675
535  PRINT "   (HOSPITALS)"
540  PRINT 
545  LET Z=1
550  PRINT "HOW MANY FIELD HOSPITALS DO YOU INTEND TO USE";
555  INPUT R
560  IF R <= 0 THEN 605
565  IF R <> INT(R) THEN 550
570  GOSUB 1515
575  LET Y1=Y
580  LET C1=INT(R*Y*2000)
585  LET C=C1
590  GOSUB 1585
595  IF C=.5 THEN 550
600  GOTO 610
605  LET C1=0
610  GOSUB 1675
615  PRINT "   (DRUGS FOR SICK)"
620  PRINT 
625  LET Z=2
630  PRINT "HOW MANY FULL TREATMENTS OF DRUGS"
635  PRINT "FOR THE ILL, SHOULD BE ORDERED PER YEAR";
640  INPUT P
645  IF P <= 0 THEN 690
650  IF P <> INT(P) THEN 630
655  GOSUB 1515
660  LET Y2=Y
665  LET C2=INT(2*P*Y)
670  LET C=C2
675  GOSUB 1585
680  IF C=.5 THEN 630
685  GOTO 695
690  LET C2=0
695  GOSUB 1675
700  PRINT "   (MOSQUITOES)"
705  PRINT 
710  LET L3=.75
715  LET Z=3
720  PRINT "WHAT PERCENTAGE OF MOSQUITOES DO YOU WANT TO ELIMINATE";
725  INPUT V
730  IF V <= 0 THEN 825
735  IF ABS(V-50)>50 THEN 720
740  LET V=V/100
745  PRINT "WHAT PESTICIDE WILL YOU USE"
750  PRINT "1=DDT       2=MALATHION      3=PROPOXUR"
755  INPUT Q
760  IF Q=1 THEN 790
765  IF Q <> 2 THEN 780
770  LET L3=L3*3.08
775  GOTO 790
780  IF Q <> 3 THEN 750
785  LET L3=L3*8.5
790  GOSUB 1515
795  LET Y3=Y
800  LET C3=INT(L3*100000.*V*Y)
805  LET C=C3
810  GOSUB 1585
815  IF C=.5 THEN 710
820  GOTO 830
825  LET C3=0
830  GOSUB 1675
835  PRINT "   (PREVENTIVE DRUGS)"
840  PRINT 
845  LET Z=4
850  PRINT "HOW MANY DOSES OF PREVENTIVE DRUGS, FOR THOSE"
855  PRINT "HEALTHY, DO YOU WANT TO ORDER PER YEAR";
860  INPUT H
865  IF H <= 0 THEN 910
870  IF H <> INT(H) THEN 850
875  GOSUB 1515
880  LET Y4=Y
885  LET C4=INT(.72*H*Y)
890  LET C=C4
895  GOSUB 1585
900  IF C=.5 THEN 850
905  GOTO 915
910  LET C4=0
915  REM CALC. SECT.
920  PRINT 
925  PRINT 
930  IF N <> 0 THEN 955
935  LET Q=FNR(0)
940  LET M=25000+Q*SQR(4500)
945  LET F=.04*M+Q*SQR(.04*M)
950  PRINT "USING YOUR PLAN:"
955  PRINT "YEAR","NO. SICK","NO. DEATHS DUE TO MALARIA"
960  PRINT "----","--------","-------------------------"
965  PRINT N,INT(M+.5),INT(F+.5)
970  FOR X=1 TO 5
975  IF Y[3,X] <> 1 THEN 995
980  LET V1=V*.8
985  LET E3=E3+V1
990  GOTO 1000
995  LET V1=0
1000  LET S5=.25*S4+S5
1005  LET S4=INT(.75*S4+.5)
1010  IF Y[4,X] <> 1 THEN 1050
1015  LET H1=(H+S4)/100000.
1020  IF H1<1 THEN 1035
1025  LET H1=1
1030  LET S4=S4+H-100000.
1035  LET H1=H1*.6
1040  LET E4=E4+H1
1045  GOTO 1055
1050  LET H1=0
1055  LET Q=FNR(0)
1060  LET M=25000*(1-V1)*(1-H1)+Q*SQR(4500)
1065  LET S6=.25*S2+S6
1070  LET S2=INT(.75*S2+.5)
1075  IF Y[2,X] <> 1 THEN 1115
1080  LET P1=(P+S2)/M
1085  IF P1<1 THEN 1100
1090  LET P1=1
1095  LET S2=S2+P-M
1100  LET P1=P1*.85
1105  LET E2=E2+P1
1110  GOTO 1120
1115  LET P1=0
1120  IF Y[1,X] <> 1 THEN 1190
1125  LET R3=20*R
1130  IF Y[2,X] <> 1 THEN 1155
1135  IF P+S2>50*R THEN 1150
1140  LET R3=P+S2+R
1145  GOTO 1155
1150  LET R3=51*R
1155  LET R1=R3/M
1160  IF R1 <= 1 THEN 1175
1165  LET R1=1
1170  LET S1=S1+1
1175  LET R1=R1*.97
1180  LET E1=E1+R1
1185  GOTO 1195
1190  LET R1=0
1195  IF R1>P1 THEN 1205
1200  LET R1=P1
1205  LET M=(1-R1)*M
1210  LET F=(.04-.036*P1)*M+Q*SQR((.04-.036*P1)*M)
1215  IF F>0 THEN 1225
1220  LET F=0
1225  LET G=G+INT(F+.5)
1230  PRINT X+N,INT(M+.5),INT(F+.5)
1235  NEXT X
1240  REM EVAL.SECT. 
1245  PRINT 
1250  PRINT "OVER YOUR ";N+5;" YEAR TREATMENT PROGRAM"
1255  PRINT G;" DEATHS DUE TO MALARIA HAVE BEEN RECORDED"
1260  PRINT 
1265  PRINT "DO YOU WISH AN EVALUATION (1=YES, 0=NO)";
1270  INPUT Q
1275  IF Q=0 THEN 1410
1280  IF Q <> 1 THEN 1260
1285  PRINT 
1290  PRINT 
1295  PRINT "TOTAL COST ";C8-C6;" DOLLARS"
1300  IF C1+C2+C3+C4=0 THEN 1410
1305  PRINT "PROGRAM","COST","YEARS","EFFECTIVENESS (PCT.)"
1310  PRINT "-------","----","-----","-------------------"
1315  IF C1=0 THEN 1325
1320  PRINT "HOSPITALS",C1,Y1,INT(E1*1000/Y1)/10
1325  IF C2=0 THEN 1335
1330  PRINT "DRUG TREAT",C2,Y2,INT(E2*1000/Y2)/10
1335  IF C3=0 THEN 1345
1340  PRINT "MOSQ SPRAY",C3,Y3,INT(E3*1000/Y3)/10
1345  IF C4=0 THEN 1355
1350  PRINT "PREVENT DRUG",C4,Y4,INT(E4*1000/Y4)/10
1355  IF S1+S2+S4+S5+S6=0 THEN 1410
1360  PRINT 
1365  PRINT "SURPLUS ORDERING:"
1370  IF S1=0 THEN 1380
1375  PRINT S1;" YEARS SURPLUS IN SOME UNOCCUPIED BEDS"
1380  IF S2+S6=0 THEN 1395
1385  PRINT INT(S2+S6);" TREATMENTS OF DRUGS FOR SICK UNUSED"
1390  PRINT "OF THESE ";INT(.75*S2+.5);" DOSES ARE STILL USABLE"
1395  IF S4+S5=0 THEN 1410
1400  PRINT INT(S4+S5);" DOSES OF PREVENTIVE DRUG NOT ADMINISTERED"
1405  PRINT "OF THESE ";INT(S4*.75+.5);" DOSES ARE STILL USABLE"
1410  PRINT 
1415  PRINT "DO YOU WANT TO (1) TAKE THE NEXT FIVE YEARS"
1420  PRINT "OR (2) START OVER  OR (3) END. TYPE NUMBER";
1425  INPUT Q
1430  IF Q=1 THEN 1455
1435  IF Q=3 THEN 1700
1440  IF Q <> 2 THEN 1410
1445  RESTORE 
1450  GOTO 440
1455  IF Z9=2 THEN 1495
1460  IF C6 <= 0 THEN 1475
1465  PRINT "YOUR FUND HAS BEEN CREDITED WITH YOUR CURRENT"
1470  PRINT "BALANCE OF $";C6
1475  LET C6=C6+C7
1480  LET N=N+5
1485  RESTORE 
1490  GOTO 450
1495  LET N=N+5
1500  LET C6=C8
1505  RESTORE 
1510  GOTO 450
1515  PRINT 
1520  PRINT "FOR THIS TREATMENT:"
1525  IF C <> 0 THEN 1540
1530  PRINT "INDICATE YEARS TO BE USED BY TYPING, AFTER THE YEAR,"
1535  PRINT "1=YES OR 0=NO"
1540  LET Y=0
1545  FOR X=1 TO 5
1550  PRINT "YEAR";X+N;
1555  INPUT Y[Z,X]
1560  IF Y[Z,X]=0 THEN 1575
1565  IF Y[Z,X] <> 1 THEN 1535
1570  LET Y=Y+1
1575  NEXT X
1580  RETURN 
1585  PRINT "COST OF THIS TREATMENT: $";C
1590  IF Z9=1 THEN 1610
1595  LET C8=C8+C
1600  PRINT "TOTAL MONEY ALREADY ALLOCATED FOR ";N+5;" YEARS $";C8
1605  RETURN 
1610  LET C6=C6-C
1615  IF C6<0 THEN 1630
1620  PRINT "THIS LEAVES A BALANCE OF ";C6;" DOLLARS"
1625  RETURN 
1630  LET C6=C6+C
1635  LET C=.5
1640  PRINT "YOUR LAST ITEM OVERSPENT YOUR BUDGET"
1645  PRINT "RESET THIS EXPENDITURE SO IT'S WITHIN THE $";C6;" REMAINING"
1650  RETURN 
1675  PRINT 
1680  FOR X=1 TO 49
1685  PRINT "-";
1690  NEXT X
1695  RETURN 
1700  END 
