Listing of file='RENTAL.BAS;01' on disk='vmedia/taylor-sideA-sector.ccvf'
100 PRINT "RENTAL PROPERTY COST ACCOUNTING PROGRAM,'RENTAL':R.S.SHEVELL 110 REM -THIS PROGRAM REQUIRES LOADING PRIOR COST AND BUDGET 120 REM -ARRAYS FROM THE DISC.WHEN STARTING A NEW PROJECT WITH 130 REM -NO PRIOR DATA,TYPE 'RUN 4000'.THIS SUBROUTINE WILL 140 REM -INPUT EMPTY ARRAYS REQUIRED TO INITIALIZE THE PROGRAM. 150 CLEAR 150 160 PRINT 170 DIM C(150,11),D$(60) 180 DIM S(12),M$(11) 190 DIM B(12) 200 PLOT 6,67 210 PRINT TAB( 5)"COMPUTER NOW LOADING AND ORGANIZING DATA ARRAYS" 220 LOAD "C.ARY" 230 LOAD "B.ARY" 240 REM -FIND THE FIRST ROW WITH NO ENTRIES AND SET THE PREVIOUS ROW AS THE LAST ROW TO BE SHOWN. 250 FOR I= 1TO 150 260 P= 0 270 FOR J= 1TO 10 280 P= P+ C(I,J) 290 NEXT J 300 IF P= 0THEN 320 310 NEXT I 320 F= I- 1 330 REM -F=NO. OF PRIOR EXPENSE ENTRIES(I.E.ROWS IN COST ARRAY) 340 REM -D$ DEFINES THE SUPPLIER OR TYPE OF EXPENSE.SINCE 350 REM - THE STORED MATRIX MUST BE NUMERIC THE FOLLOWING 360 REM -ROUTINE DEFINES D$ IN TERMS OF NUMBERS STORED IN 370 REM THE SECOND COLUMN(J=2) OF THE COST MATRIX,C(I,J). 372 REM - NOTE: SUPPLIER NAME MUST BE LONGER THAN 2 CHARACTERS 374 PRINT 376 REM -TRUST DEEDS 380 D$(1)= "AM SAVGS" 390 D$(2)= "GRT WEST" 400 D$(3)= "HOME SAV" 410 D$(4)= "BARCLAY" 418 REM -UTILITIES 420 D$(11)= "DW & P" 430 D$(12)= "SOCALGS" 440 D$(13)= "PG&E" 450 D$(14)= "P.A.UTIL" 460 D$(15)= "M.V.CITY" 470 D$(16)= "PAC.TEL" 475 REM - SCHEDULED MAINTENANCE 480 D$(17)= "RUBBISH" 490 D$(18)= "PESTCON" 495 D$(19)= "GARDNER" 498 REM -REPAIRS 500 D$(21)= "PLUMBER" 510 D$(22)= "ROOTER" 520 D$(23)= "WM.LIPP" 530 D$(24)= "AIR COND" 540 D$(25)= "ELECT" 550 D$(26)= "HARDWRE" 560 D$(27)= "PAINTER" 570 D$(28)= "ROOFER" 580 D$(29)= "MISCELL" 581 D$(30)= "CONTRRS" 582 REM -TAXES 590 D$(35)= "L.A.TAX" 600 D$(36)= "S.C.TAX" 602 D$(37)= "BSNS.TAX" 608 REM -INSURANCE 610 D$(40)= "MDM INS" 620 D$(41)= "MONTETH" 630 D$(42)= "FLOOD " 632 D$(43)= "STATEFND" 634 REM -MANAGER 640 D$(46)= "CONTRRS" 650 REM -CAPITAL EXPENSES 652 D$(50)= "CARPETS" 654 D$(51)= "APPLIAN" 657 D$(52)= "ROOF" 660 D$(53)= "MISCELL" 661 REM -CATEGORIES OF EXPENSE 662 M$(3)= "TRUST DEED" 664 M$(4)= "UTILITIES" 666 M$(5)= "SCHED.MAINT." 668 M$(6)= "REPAIRS" 670 M$(7)= "TAXES" 672 M$(8)= "INSURANCE" 674 M$(9)= "MANAGER" 676 M$(10)= "MISCELLANEOUS" 678 M$(11)= "CAPITAL EXPENSES" 685 REM -START WORKING PART OF THE PROGRAM. 687 PLOT 6,2 690 PLOT 12 695 PLOT 6,49 700 PRINT "IF YOU GET LOST IN THIS PROGRAM AND WISH TO RETURN" 710 PRINT "TO THE 'MENU' GIVEN BELOW,TYPE 'GO TO 750'" 720 PRINT 730 PRINT 740 PLOT 6,2 750 PRINT " WHEN THIS PROGRAM IS FIRST LOADED, SERVICE NO.2 MUST BE RUN BEFORE SERVICE NO.3 WILL RUN." 755 PRINT 760 PRINT "WHICH OF THE FOLLOWING SERVICES DO YOU WISH?" 770 PRINT 780 PRINT "1:ADD EXPENSES TO THE FILE" 790 PRINT 800 PRINT "2:REVIEW EXPENSE FILE" 810 PRINT 820 PRINT "3:REVIEW TOTAL EXPENSE AND COMPARE WITH BUDGET" 830 PRINT 840 PRINT "4:ENTER OR REVISE BUDGET" 850 PRINT 860 PRINT "5: TERMINATE SESSION AND SAVE DATA" 870 PRINT 880 PRINT "TYPE NUMBER OF DESIRED SERVICE" 890 PRINT 900 INPUT A 910 IF A= 1THEN 960 920 IF A= 2THEN 1440 930 IF A= 3THEN 1810 940 IF A= 4THEN 2330 950 IF A= 5THEN 3000 960 PRINT 965 REM - 970 PRINT "WHAT CATEGORY OF EXPENSE DO YOU WISH TO ENTER?" 980 PRINT 1070 PRINT 1080 FOR K= 3 TO 11 1090 PRINT K")" M$(K): PRINT 1100 NEXT K 1110 PRINT 1120 INPUT D 1125 IF D< 3 OR D> 11 THEN 1080 1130 I= F+ 1 1140 PRINT 1150 REM -PRINT F TO SHOW NUMBER OF PRIOR EXPENSES ENTERED. 1160 PRINT F" EXPENSES HAVE BEEN ENTERED IN THIS ACCOUNT" 1170 PRINT :PRINT 1180 PRINT I 1190 REM - ENTER NEW EXPENSES 1200 PRINT "ENTER DATE OF EXPENSE. EXAMPLE:APRIL 6,1979=4.0679" 1210 PRINT 1220 INPUT C(I,1) 1230 PRINT 1240 PRINT " ENTER DESCRIPTION FROM ONE OF THE FOLLOWING BY" 1250 PRINT "TYPING THE APPROPRIATE NUMBER" 1255 PRINT 1260 R= D- 2 1270 ON R GOSUB 6000,6100,6200,6300,6400,6500,6600,6700,6800 1300 PRINT 1320 PRINT :PRINT :PRINT "ENTER EXPENSE" 1330 REM -LET J=COLUMN NUMBER OF DESIRED EXPENSE ENTRY 1340 J= D 1350 PRINT 1360 INPUT C(I,J) 1370 F= F+ 1 1380 PRINT 1390 PRINT "DO YOU WISH TO ENTER ANOTHER EXPENSE?(Y OR N)" 1400 PRINT 1410 INPUT A$ 1420 IF A$= "Y"THEN 960 1430 IF A$= "N"THEN 760 1435 IF A$< > "Y" THEN IF A$< > "N" THEN 1390 1440 PRINT 1450 REM -PRINT ENTIRE DATA ARRAY 1460 PLOT 29:PLOT 23 1470 PRINT TAB( 0)" DATE DESCRIP T.DEED UTILITY SCHEDUL REPAIRS TAXES" 1480 PRINT 1490 REM -F IS THE NUMBER OF THE LAST ROW WITH AN ENTRY 1500 FOR I= 1TO F 1502 P= 0: FOR J= 3 TO 7 1504 P= P+ C(I,J) 1506 NEXT J 1508 IF P= 0 THEN 1570 1510 J= 1 1520 PRINT TAB( 0)C(I,J); 1530 PRINT TAB( 8)D$(C(I,2)); 1540 FOR J= 3TO 7 1550 PRINT TAB( 9* (J- 1))C(I,J); 1560 NEXT J 1565 PRINT 1570 NEXT I 1580 PRINT 1590 PRINT 1600 PRINT " DATE";" DESCRIP ";" INSURNC ";" MANAGER ";" MISCELL ";" CAPITAL EXP." 1610 PRINT 1620 FOR I= 1TO F 1630 IF C(I,8)= 0 THEN IF C(I,9)= 0 THEN IF C(I,10)= 0 THEN IF C(I,11)= 0 THEN 1690 1640 J= 1 1650 PRINT TAB( 0)C(I,1); 1660 PRINT TAB( 8)D$(C(I,2)); 1670 FOR J= 8 TO 11 1680 PRINT TAB( 16+ (J- 8)* 9)C(I,J); 1685 NEXT J 1687 PRINT 1690 NEXT I 1700 PRINT :PRINT 1710 PLOT 29:PLOT 18 1720 PRINT "IF YOU WISH TO REPEAT THE FILE,TYPE'REPEAT'" 1730 PRINT 1740 PRINT "IF YOU ARE FINISHED EXAMINING THE FILE ,TYPE'GO'" 1750 PRINT 1760 INPUT E$ 1770 IF LEFT$ (E$,3)= "REP"THEN 1440 1780 IF E$= "GO"THEN 730 1785 GOTO 1720 1790 PRINT 1800 END 1810 PRINT 1815 REM - 1820 PLOT 29:PLOT 21 1830 PRINT F" EXPENSES HAVE BEEN ENTERED FOR THIS ACCOUNT" 1840 PRINT 1850 REM -TOTAL EXPENSES IN EACH CATEGORY AND THE TOTAL OF ALL 1860 REM -EXPENSES ARE NOW CALCULATED AND DISPLAYED.COMPARISON 1870 REM -WITH THE BUDGET IS SHOWN. CAPITAL EXPENSES ARE SHOWN SEPARATELY. 1880 PLOT 29:PLOT 22 1890 PRINT "TOTAL EXPENSES AND COMPARISON WITH BUDGET" 1900 PRINT 1910 FOR J= 3TO 11 1920 S(J)= 0 1930 NEXT J 1940 PRINT 1950 FOR J= 3TO 11 1960 FOR I= 1TO F 1970 S(J)= S(J)+ C(I,J) 1980 NEXT I 1990 NEXT J 2000 T= 0 2010 FOR J= 3TO 10 2020 T= T+ S(J) 2030 NEXT J 2040 PLOT 29:PLOT 23 2050 PRINT TAB( 20)"EXPENSES";TAB( 30)"BUDGET" 2060 PRINT TAB( 20)"--------";TAB( 30)"-------" 2070 PRINT 2080 FOR J= 3TO 10 2090 PRINT TAB( 5)M$(J); 2100 GOSUB 3500 2110 PRINT TAB( 20)S(J); 2120 PLOT 29:PLOT 23 2130 PRINT TAB( 30)B(J) 2140 NEXT J 2150 PRINT TAB( 20)"--------";TAB( 30)"-------";TAB( 40)"LAST ENTRY ON "C(F,1) 2160 PRINT TAB( 10)"TOTAL $"; 2170 J= 12 2175 REM - S(12) IS CREATED SO LINES 3500 AND 3550 WILL WORK . 2180 S(12)= T 2190 GOSUB 3500 2200 PRINT TAB( 20)S(J); 2210 PLOT 29:PLOT 23 2220 PRINT TAB( 30)B(J); 2230 PRINT TAB( 40)"CAPITAL EXP.="S(11) 2240 PLOT 29:PLOT 18 2250 PRINT 2260 PRINT 2270 PRINT "WHEN FINISHED WITH THE TOTALS,TYPE 'GO'" 2280 PRINT 2290 INPUT G$ 2300 IF G$= "GO"THEN 760 2305 IF G$< > "GO" THEN 2270 2310 END 2320 PRINT 2325 REM - 2330 PRINT "FOR WHICH OF THE FOLLOWING CATEGORIES DO YOU" 2340 PRINT "WISH TO ENTER OR REVISE THE BUDGET? TYPE THE " 2350 PRINT "APPROPRIATE NUMBER." 2360 PRINT 2370 PLOT 29:PLOT 23 2380 FOR K = 3 TO 11 2390 PRINT K ")" M$(K):PRINT 2395 NEXT K 2400 PLOT 29:PLOT 18 2410 PRINT 2420 INPUT G 2430 PRINT 2440 PRINT "ENTER BUDGET AMOUNT FOR THIS CATEGORY" 2450 PRINT 2460 INPUT B(G) 2470 W= 0 2475 REM -OBTAIN TOTAL OF BUDGETED EXPENSES. CALL TOTAL ' B(12)'. 2480 FOR G= 3TO 10 2490 W= W+ B(G) 2500 B(12)= W 2510 NEXT G 2520 PRINT :PRINT 2530 PRINT "DO YOU WISH TO ENTER OR REVISE ANOTHER BUDGET" 2540 PRINT "CATEGORY? TYPE Y OR N." 2550 PRINT 2560 INPUT N$ 2570 IF N$= "Y"THEN 2330 2580 IF N$= "N"THEN 720 2590 IF N$< > "Y" THEN IF N$< > "N" THEN 2530 2990 REM - 3000 PLOT 27:PLOT 4:REM -SELECT FCS MODE 3010 PRINT "DELETE C.ARY;1" 3020 PRINT "RENAME C.ARY;2 TO C.ARY;1" 3030 PRINT "DELETE B.ARY;1" 3040 PRINT "RENAME B.ARY;2 TO B.ARY;1" 3050 PLOT 27:PLOT 27:REM -RETURN TO BASIC(ESCAPE E) 3060 SAVE "C.ARY" 3070 SAVE "B.ARY" 3080 END 3490 REM -THIS ROUTINE PRINTS THE EXPENSES IN YELLOW IF WITHIN 3495 REM -10% OF THE BUDGET AND IN RED IF OVER THE BUDGET. 3500 IF S(J)> (0.9* B(J))THEN IF S(J)< B(J)THEN 3530 3510 IF S(J)= > B(J)THEN 3550 3520 RETURN 3530 PLOT 29:PLOT 19 3540 RETURN 3550 PLOT 29:PLOT 17 3560 RETURN 3990 REM - 3998 PRINT 4000 PLOT 6,115 4002 PRINT "COMPUTER NOW SETTING UP INITIALIZING DATA ARRAYS" 4008 DIM C(150,11) 4010 FOR I= 1TO 150 4020 FOR J= 1TO 11 4030 C(I,J)= 0 4040 NEXT J 4050 NEXT I 4060 DIM B(12) 4070 FOR J= 1TO 12 4080 B(J)= 0 4090 NEXT J 4100 DIM D$(60) 4110 DIM S(12) 4120 DIM M$(11) 4130 FOR K= 1TO 2 4140 SAVE "B.ARY" 4150 SAVE "C.ARY" 4160 NEXT K 4170 GOTO 250 4180 END 6000 FOR K = 1 TO 10 6010 IF LEN ( D$(K))< 3 THEN 6030 6020 PRINT K ")" D$(K):PRINT 6030 NEXT K 6033 INPUT C(I,2) 6036 IF C(I,2)< 1 OR C(I,2)> 10 THEN 6000 6040 RETURN 6100 FOR K = 11 TO 16 6110 IF LEN ( D$(K))< 3 THEN 6130 6120 PRINT K ")" D$(K):PRINT 6130 NEXT K 6133 INPUT C(I,2) 6136 IF C(I,2)< 11 OR C(I,2)> 16 THEN 6100 6140 RETURN 6200 FOR K = 17 TO 19 6210 IF LEN ( D$(K))< 3 THEN 6230 6220 PRINT K ")" D$(K):PRINT 6230 NEXT K 6233 INPUT C(I,2) 6236 IF C(I,2)< 17 OR C(I,2)> 19 THEN 6200 6240 RETURN 6300 FOR K = 20 TO 34 6310 IF LEN ( D$(K))< 3 THEN 6330 6320 PRINT K ")" D$(K):PRINT 6330 NEXT K 6333 INPUT C(I,2) 6336 IF C(I,2)< 20 OR C(I,2)> 34 THEN 6300 6340 RETURN 6400 FOR K = 35 TO 39 6410 IF LEN ( D$(K))< 3 THEN 6430 6420 PRINT K ")" D$(K):PRINT 6430 NEXT K 6433 INPUT C(I,2) 6436 IF C(I,2)< 35 OR C(I,2)> 39 THEN 6400 6440 RETURN 6500 FOR K = 40 TO 45 6510 IF LEN ( D$(K))< 3 THEN 6530 6520 PRINT K ")" D$(K):PRINT 6530 NEXT K 6533 INPUT C(I,2) 6536 IF C(I,2)< 40 OR C(I,2)> 45 THEN 6500 6540 RETURN 6600 FOR K = 46 TO 49 6610 IF LEN ( D$(K))< 3 THEN 6630 6620 PRINT K ")" D$(K):PRINT 6630 NEXT K 6633 INPUT C(I,2) 6636 IF C(I,2)< 46 OR C(I,2)> 49 THEN 6600 6640 RETURN 6700 K = 29 6720 PRINT K ")" D$(K) 6733 INPUT C(I,2) 6736 IF C(I,2)< > 29 THEN 6700 6740 RETURN 6800 FOR K = 50 TO 55 6810 IF LEN ( D$(K))< 3 THEN 6830 6820 PRINT K ")" D$(K):PRINT 6830 NEXT K 6840 RETURN