home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nibble Magazine
/
nib37b.dsk
/
REGISTER.bas
< prev
next >
Wrap
BASIC Source File
|
2023-02-26
|
3KB
|
56 lines
10 DIM X(6):TP = 5: REM 5% SALES TAX
20 REM SALE TYPE SELECTION MODULE
30 HOME : PRINT : PRINT TAB( 14);"TYPE OF SALE:": PRINT : PRINT
40 PRINT "1) CASH": PRINT : PRINT "2) CHARGE": PRINT : PRINT "3) REFUND": PRINT : PRINT "4) TOTALS": PRINT : PRINT "5) QUIT"
50 PRINT : PRINT "CHOOSE ONE: ";: GET A$:TY = VAL(A$)
60 IF TY <1 OR TY >5 THEN PRINT CHR$(7): GOTO 30
70 ON TY GOTO 90,90,310,460,550
80 REM CASH/CREDIT SALE ENTRY MODULE
90 N = 1:S = 1:TS = 0
100 HOME : PRINT "PRESS RETURN AFTER EACH ITEM."
110 PRINT "ENTER RETURN ALONE FOR LAST ITEM.": PRINT
120 PRINT "ITEM #";N;" ";: INPUT A$:X(S) = VAL(A$)
130 IF X(S) = 0 THEN GOTO 160
140 N = N +1:S = S +1: IF S <6 GOTO 120
150 REM TOTAL THIS SALE
160 FOR S = 1 TO N:TS = TS +X(S): NEXT S
170 TS = INT((TS +.005) *100)/100
180 PRINT : PRINT TAB( 8);"TOTAL SALE: ";TS
190 TX = INT(((TS *TP/100) +.005) *100)/100: PRINT : PRINT TAB( 9);"SALES TAX: ";TX:TE = TS +TX: PRINT : PRINT " TOTAL AMOUNT DUE: ";TE
200 IF TY = 2 THEN GOTO 260
210 PRINT : INPUT " AMOUNT TENDERED: ";A$:TD = VAL(A$)
220 PRINT : PRINT TAB( 12);"CHANGE: "; INT((TD -TE +.005) *100)/100
230 NT = NT +N -1:GT = GT +TS:TT = TT +TX
240 PRINT : GOSUB 560
250 GOTO 30
260 REM CHARGE SALES MODULE
270 NT = NT +N -1:CT = CT +TS:TT = TT +TX
280 PRINT : GOSUB 560
290 GOTO 30
300 REM REFUND/CREDIT ROUTINE
310 HOME : PRINT "PRESS RETURN AFTER EACH ITEM."
320 PRINT "ENTER 0 FOR LAST ITEM.": PRINT
330 N = 1:S = 1:TS = 0
340 PRINT "ITEM #";N;" ";: INPUT A$:X(S) = VAL(A$)
350 IF X(S) < >0 THEN N = N +1:S = S +1: IF S <6 GOTO 340
360 FOR S = 1 TO N:TS = TS +X(S): NEXT S
370 TS = INT((TS +.005) *100)/100
380 PRINT : PRINT "TOTAL OF ITEMS: ";TS
390 TX = INT(((TS *TP/100) +.005) *100)/100: PRINT TAB( 6);"SALES TAX: ";TX: PRINT " TOTAL CREDIT: ";TS +TX
400 PRINT : PRINT : PRINT "1) CASH REFUND": PRINT : PRINT "2) CREDIT TO ACCT": PRINT : INPUT "SELECT ONE: ";A$:RF = VAL(A$)
410 IF RF = 1 THEN NT = NT -N +1:GT = GT -TS:TT = TT -TX: GOTO 430
420 CT = CT -TS:TT = TT -TX
430 PRINT : GOSUB 560
440 GOTO 30
450 REM PRINT TOTALS
460 HOME : VTAB (3): PRINT TAB( 14);: INVERSE : PRINT "SALES SUMMARY": NORMAL
470 PRINT : PRINT TAB( 19);"ITEMS:";NT
480 PRINT :GT$ = STR$(GT): PRINT TAB( 14);"CASH SALES:";GT$
490 PRINT :CT$ = STR$(CT): PRINT TAB( 12);"CREDIT SALES:";CT$
500 PRINT :X = GT +CT:X$ = STR$(X): PRINT TAB( 16);"SUBTOTAL:";X$
510 PRINT :TT$ = STR$(TT): PRINT TAB( 15);"SALES TAX:";TT$
520 PRINT :X = GT +CT +TT:X$ = STR$(X): PRINT TAB( 10);"TOTAL RECEIPTS:";X$
530 PRINT : PRINT : PRINT TAB( 10);"PRESS RETURN FOR MENU";: INPUT Z$
540 GOTO 30
550 HOME : END
560 VTAB 23: INPUT "PRESS RETURN TO CONTINUE ";CH$: RETURN