1 REM *** BBC VERSION *** 2 REM *** PAY PACKETS *** 10 REM PAYPACKETS.....WALWYN 20 REM C$(X)=NAME OF CURRENCY 30 REM CV(X)=CURRENCY VALUE IN POUNDS 40 REM CA(X)=AMOUNT OF UNITS REQUIRED OF T HIS CURRENCY 50 REM CB(X)=TOTAL AMOUNT OF UNITS REQUIRE D OF THIS CURRENCY 60 DIM C$(10),CV(10),CA(10),CB(10) 70 FOR J=1 TO 10 : READ C$(J),CV(J) 80 C$(J)=LEFT$(C$(J)+".............",21) : NEXT J 90 DATAONE PENCE,0.01,TWO PENCE,0.02,FIVE PENCE,0.05 100 DATATEN PENCE,0.1,TWENTY PENCE,0.2,FIFT Y PENCE,0.5 110 DATAONE POUND,1,FIVE POUND,5,TEN POUND, 10 120 DATATWENTY POUND,20 130 SR=0 : XX=0 : @%=&20209 140 R2$=CHR$(157)+CHR$(129) : R1$=CHR$(157) +CHR$(135) : R$=CHR$(135)+R2$ 150 MODE 7 : VDU 23,1,0;0;0;0; 160 PROCtable 170 PRINT TAB(0,2);R$'R$;"PRESS "R1$"f0 "R 2$"TO INPUT A NEW PAYMENT" 180 PRINT R$'R$;"PRESS "R1$"f1 "R2$"TO GIV E TOTAL AMOUNT" 190 PRINT R$'R$;"PRESS "R1$"f9 "R2$"TO CAN CEL ALL DATA" 200 PRINTR$ 210 REPEAT : KEY=0 220 REM CHECK FOR INSTRUCTION KEY 230 XX=0 : SR=1 240 IF INKEY(-33) THEN PROCpacket : KEY=1 250 IF INKEY(-114) THEN XX=1 : KEY=1 260 IF INKEY(-120) THEN RUN 270 UNTIL KEY 280 GOTO 150 290 300 DEF PROCpacket 310 PRINT TAB(0,0);CHR$(134); : INPUT "CASH AMOUNT IN PACKET ",A$ 320 A=VAL(A$):A1=A 330 PRINT CHR$(134); : INPUT "NO OF PACKETS ",B$ 340 B=VAL(B$):B1=B 350 PROCcalculate 360 ENDPROC 370 380 DEF PROCtable 390 AT=0 : PRINT TAB(0,9);CHR$(148);"`````` `````````````````````````````````" 400 PRINT TAB(0,10);CHR$(134);"CURRENCY"TAB (15)"NO. OF UNITS"TAB(31)"AMOUNT" 410 FOR J=1 TO 10 420 PRINT C$(J); 430 IF XX=1 THEN C$=STR$(CB(J)) ELSE C$=S TR$(CA(J)) 440 PRINT SPC(4-LEN(C$));C$; 450 IF XX=1 THEN A=CB(J)*CV(J) ELSE A=CA( J)*CV(J) 460 AT=AT+A 470 PRINT CHR$(130),A 480 NEXT 490 PRINT TAB(28);CHR$(148);"````````" 500 PRINT TAB(20);CHR$(130);"TOTAL:",AT 510 IF SR=0 THEN ENDPROC 520 IF XX=1 THEN PRINT R$"THIS IS THE RUNNI NG TOTAL" : ENDPROC 530 PRINT CHR$(131);STR$(B1);" x `",A1; 540 PRINTCHR$(131);"THIS IS A SUB-TOTAL"; 550 ENDPROC 560 570 DEF PROCcalculate 580 REM CALCULATE CA(X) 590 X=0 : A%=A*100 600 FOR J=10 TO 1 STEP -1 610 CA(J)=0 620 REPEAT 630 IF A%>=CV(J)*100 THEN A%=A%-CV(J)*1 00 : CA(J)=CA(J)+1 640 UNTIL A%<CV(J)*100 650 NEXT J 660 FOR J=1 TO 10 : CA(J)=CA(J)*B : NEXT J 670 FOR J=1 TO 10 : CB(J)=CB(J)+CA(J) : NEX T 680 ENDPROC