10 REM-PROGRAM NAME:"EXP051" 20 REM-PROGRAM COMPUTES STATE AND FEDERAL TAX DEDUCTIONS 30 OPEN "DF:EMPLOY.MST" AS FILE 1 40 DIM#1, E$(500)=255 50 LET X%=X%+1 60 LET E1$=E$(X%) 70 IF LEFT(E1$,6)="999999" GOTO 590 80 IF MID(E1$,29,1)="1" GOTO 90 85 IF MID(E1$,51,5)<>"00000" GOTO 50 90 IF MID(E1$,35,2)=" " THEN LET X=VAL(MID(E1$,2,1)) ELSE LET X=VAL(MID(E1$,35,2)) 100 LET E2=VAL(MID(E1$,45,6)) 110 LET D3=.0585*E2 115 LET E2=E2-VAL(MID(E1$,71,5)) !TAKE OUT ANNUITY FIRST 130 IF E2<=(2880*X) GOTO 240 140 LET E2=E2-(2880*X) 145 IF E2<2100 GOTO 240 147 IF MID(E1$,37,1)="M" GOTO 270 148 IF MID(E1$,37,1)="S" GOTO 160 150 IF LEFT(E1$,1)="2" GOTO 270 160 IF E2>2100 AND E2<6900 THEN LET D1=.14*(E2-2100) 170 IF E2>6900 AND E2<14600 THEN LET D1=672+(.18*(E2-6900)) 180 IF E2>14600 AND E2<40400 THEN LET D1=2058+(.21*(E2-14600)) 190 IF E2>40400 AND E2<46200 THEN LET D1=7476+(.23*(E2-40400)) 200 IF E2>46200 AND E2<53800 THEN LET D1=8810+(.27*(E2-46200)) 210 IF E2>53800 AND E2<66500 THEN LET D1=10862+(.31*(E2-53800)) 220 IF E2>66500 THEN LET D1=14799+(.35*(E2-66500)) 230 GOTO 350 240 LET D1$="00000" 250 LET D2$="00000" 260 LET D3=INT(D3*10^0+.5)/10^0 261 GOTO 450 270 IF E2>2100 AND E2<7900 THEN LET D1=.14*(E2-2100) 280 IF E2>7900 AND E2<33500 THEN LET D1=812+ (.16*(E2-7900)) 290 IF E2>33500 AND E2<41300 THEN LET D1= 4908+(.20*(E2-33500)) 300 IF E2>41300 AND E2<64800 THEN LET D1=6468+(.24*(E2-41300)) 310 IF E2>64800 AND E2<81700 THEN LET D1=12108+(.28*(E2-64800)) 320 IF E2>81700 AND E2<97100 THEN LET D1=16840+(.32*(E2-81700)) 330 IF E2>97100 THEN LET D1=21768+(.36*(E2-97100)) 340 GOTO 350 350 LET D1=D1+VAL(MID(E1$,175,4)) 351 LET D2=.2725*D1 360 LET D1=INT(D1*10^0+.5)/10^0 !ROUND OFF 370 LET D2=INT(D2*10^0+.5)/10^0 !ROUND OFF 380 LET D3=INT(D3*10^0+.5)/10^0 390 LET X9$=NUM$(D1) 400 GOSUB 500 410 LET D1$=SPACE$(M)+X1$ 420 LET X9$=NUM$(D2) 430 GOSUB 500 440 LET D2$=SPACE$(M)+X1$ 450 LET X9$=NUM$(D3) !GET FICA 460 GOSUB 500 470 LET D3$=SPACE$(M)+X1$ 480 LET E$(X%)=LEFT(E1$,50)+D1$+D2$+D3$+ MID(E1$,66,190) 490 GOTO 50 500 LET A=LEN(X9$): LET N=1 510 LET A=A-1 520 IF A>5 GOTO 560 530 LET X1$=MID(X9$,N,A) 540 LET M=5-A 550 RETURN 560 IF LEFT(X9$,1)<>" " THEN STOP 570 LET N=N+1 580 LET A=A-1: GOTO 520 590 CLOSE 1 591 PRINT "FICA, FEDERAL AND STATE TAXES HAVE BEEN COMPUTED" 600 END