0 ' *TRAVXP.BA * 6/85 1 ' Club 100 Library - 415/939-1246 BBS, 937-5039 NEWSLETTER, 932-8856 VOICE 2 ' YOU MUST HAVE FILE VACEXP.DO to use this program. 3 CLEAR1000:DIMC$(20),CD(50),D$(50),AM(50),IT$(50),LO$(50),P$(50):CLS:GOSUB38:G$="$$###.##":H$="##.##":PRINT@8,"TRAVELING EXPENSE PROGRAM":PRINTTAB(19)"BY":PRINTTAB(10)"Nathaniel F. Ireland":PRINTTAB(14)"January 1984":FORT=0TO1000:NEXT 4 PRINTTAB(3)"1 = LOAD RAM FILE FOR ENTRY":PRINTTAB(3)"2 = LOAD CAS FILE FOR DISPLAY":GOSUB41:IFE<1ORE>2THENGOSUB41 5 IFE=1THENA$="RAM:VACEXP.DO":ELSEA$="CAS:VACEXP":DB=1 6 PRINTTAB(3)"TRAVELING EXPENSE FILE now loading.";:' 7 OPENA$FORINPUTAS1:INPUT#1,CS,CT,MS,MT,PT,GT 8 IFEOF(1)THEN10 9 INPUT#1,CD(J),D$(J),AM(J),IT$(J),P$(J),LO$(J):J=J+1:GOTO8 10 CLOSE 11 IFDB=1THEN21:REM MENU 12 CLS:PRINT@17,"MENU":PRINT:PRINTTAB(3)"1 = ADD EXPENCES":PRINTTAB(3)"2 = DISPLAY EXPENSE FILE":PRINTTAB(3)"3 = CALCULATE MILES/GALLON":PRINTTAB(3)"4 = REVIEW BALANCES":PRINTTAB(3)"5 = END SESSION":GOSUB41:IFE<1ORE>5THENGOSUB41 13 ONEGOTO14,21,29,33,35 14 ' 15 IFJ>50THENCLS:PRINT@240,"FILE FULL. SEE INSTRUCTIONS.":FORN=0TO1000:NEXT:GOTO35 16 CLS:PRINT@290,"ENTRIES = "J;:GOSUB40:IFE=20THEN11:ELSEIFE<1ORE>20THEN14:ELSEIFE<>1THEN19 17 CLS:PRINT@5,"CATEGORY: *";C$(E);"* ";DATE$:D$(J)=DATE$:CD(J)=E:PRINT:PRINTTAB(3)"AMOUNT:";:PRINTTAB(22)"GALLONS:":PRINTTAB(3)"ODOMETER:":PRINTTAB(3)"PAYEE:":PRINTTAB(3)"LOCATION:":PRINTTAB(3)"1=CASH, 2=CHARGE:" 18 PRINT@92,;:INPUTAM(J):PRINT@109,;:INPUTGA:GT=GT+GA:PRINT@133,;:INPUTIT$( J):MI=VAL(IT$(J))-(MS+MT):MT=MT+MI:PRINT@170,;:INPUTP$(J):PRINT@213,;:INPUTLO$(J):PRINT@260,;:INPUTCA:IFCA=1THENCT=CT+AM(J):J=J+1:GOTO14:ELSEPT=PT+AM(J):J=J+1:GOTO14 19 CLS:PRINT@5,"CATEGORY: *";C$(E);"* ";DATE$:D$(J)=DATE$:CD(J)=E:PRINT:PRINTTAB(3)"AMOUNT:":PRINTTAB(3)"ITEM:":PRINTTAB(3)"PAYEE:":PRINTTAB(3)"LOCATION:":PRINTTAB(3)"1=CASH, 2=CHARGE:" 20 PRINT@92,;:INPUTAM(J):PRINT@133,;:INPUTIT$( J):PRINT@170,;:INPUTP$(J):PRINT@213,;:INPUTLO$(J):PRINT@260,;:INPUTCA:IFCA=1THENCT=CT+AM(J):J=J+1:GOTO14:ELSEPT=PT+AM(J):J=J+1:GOTO14 21 ' 22 CLS:PRINT:PRINT:PRINTTAB(10)"1 = ENTIRE FILE":PRINTTAB(10)"2 = BY CATIGORY":PRINTTAB(10)"3 = END DISPLAY":GOSUB41:IFE<1ORE>3THEN22:ELSEIFE=1THEN27:ELSEIFDB=1ANDE=3THENEND:ELSEIFE=3THEN11 23 GOSUB39:IFE=20THEN11:ELSEIFE<1ORE>20THEN41 24 CLS:FORN=0TOJ-1:IFCD(N)=ETHENPRINTD$(N);USINGG$;AM(N);:CZ=CZ+AM(N):PRINT" "IT$(N)" "P$(N)" "LO$(N):L=L+1 25 IFL=7THENPRINTSPACE$(20);:LINEINPUTZ$:L=0:CLS 26 NEXTN:PRINTUSINGG$;CZ;:PRINT" TOTAL *";C$(E);"* CATEGORY.";:LINEINPUTZ$:CLS:L=0:CZ=0:GOTO23 27 CLS:FORN=0TOJ-1:PRINTD$(N);USINGG$;AM(N);:CZ=CZ+AM(N):PRINT" "IT$(N)" "P$(N)", "LO$(N):L=L+1:IFL=7THENPRINTSPACE$(20);:LINEINPUTZ$:L=0:CLS 28 NEXTN:PRINTUSINGG$;CZ;:PRINT" TOTAL, End Of File.";:LINEINPUTZ$:L=0:CZ=0:GOTO11 29 ' 30 CLS:PRINT@5,"MILEAGE CALCULATION":PRINT:IFGA=0THENPRINTTAB(3)"NO GAS ENTRY TODAY":PRINT:GOTO32 31 PRINTTAB(3)"MILES TODAY:"MI:PRINTTAB(3)"MILES PER GALLON TODAY:"USINGH$;MI/GA 32 PRINT:PRINTTAB(3)"MILES OF TRIP TO DATE:"MT:PRINTTAB(3)"MILES PER GALLON FOR TRIP:"USINGH$;MT/GT:PRINT@280,;:INPUT"PRESS ENTER";Z:GOTO11 33 ' 34 CLS:PRINT@8,"REVIEW BALANCES":PRINT:PRINTTAB(3)"CASH ON HAND:"USINGG$;CS-CT:PRINT:PRINTTAB(3)"TOTAL CHARGED:"USINGG$;PT:PRINT@280,;:INPUT"PRESS ENTER";Z:GOTO11 35 ' 36 CLS:PRINT@5,"RECORDING ARRAY TO RAM":OPEN"VACEXP.DO"FOROUTPUTAS1:PRINT#1,CS","CT","MS","MT","PT","GT:FORN=0TOJ-1:PRINT#1,CD(N)","D$(N)","AM(N)","IT$(N)","P$(N)","LO$(N):NEXTN:CLOSE:END:' 37 DATA"GAS","OIL","REPAIRS","REST.":DATA"GROC.","CLOTHING","C SITE","SITE ADD","C supply":DATA"Motel","Medical","Tolls","Amuse","Gifts":DATA"PERS.","Film","PHONE","MISC.":DATA"TIPS","MENU" 38 FORRC=1TO20:READC$:C$(RC)=C$:NEXTRC:RETURN 39 CLS 40 FORRC=1TO7:PRINT@0+X,RC"= "C$(RC):X=X+40:NEXTRC:X=0:FORRC=8TO14:PRINT@13+X,RC"= "C$(RC):X=X+40:NEXTRC:X=0:FORRC=15TO20:PRINT@27+X,RC"= "C$(RC):X=X+40:NEXTRC:X=0 41 PRINT@266,;:INPUT" CHOICE_";E:RETURN