10 ! MATERIAL AND DIRECT LABOR VARIANCES ! PROGRAMMED BY !RICHARD D'ANGELO AND DARRYL JOHNSON 20 ! BENTLEY COLLEGE JAN'73 !****************************************************************** 30 F$=" (FAVORABLE)":U$=" (UNFAVORABLE)":T$="$$###,###.##": T1$=" ###,###.##" 40 PRINT:PRINT "HOW MANY RAW MATERIALS ARE USED IN THE PRODUCTION": INPUT "OF THE PRODUCT";N1 50 IF N1>10 OR N1<0 THEN PRINT:PRINT "THE VALID RANGE FOR RAW";: PRINT " MATERIALS USED IS 0 TO 10":GO TO 40 60 IF N1=0 THEN 110 70 PRINT:PRINT "IS THE MATERIAL PRICE VARIANCE CALCULATED AT";: PRINT " TIME OF PURCHASE":INPUT "OR AT THE TIME OF ISSUANCE";C$ 80 IF LEFT(C$,3%)="PUR" OR LEFT(C$,3%)="ISS" THEN 90 ELSE PRINT:PRINT "PLEASE ANSWER PURCHASE OR ISSUANCE":GO TO 70 90 PRINT:PRINT:PRINT "RAW MAT# STD PRI,ACT PRI,STD UNT,TOT ACT";: PRINT ",ACT QTY":PRINT "-"; FOR X=1 TO 49 100 PRINT:FOR X=1 TO N1:PRINT" ";X;:INPUT A(X);B(X);C(X);D(X);E(X): NEXT X 110 PRINT:INPUT "HOW MANY LABOR RATES ARE IN USE";N2 120 IF N2>10 OR N2<0 THEN PRINT:PRINT "THE VALID RANGE FOR LABOR";: PRINT " RATE VARIANCES IS 0 TO 10":GO TO 110 130 IF N2=0 AND N1=0 THEN PRINT:PRINT "NO MATERIAL AND NO";: PRINT " LABOR VARIANCES????? -TRY AGAIN": GO TO 40 140 IF N2=0 THEN 170 150 PRINT:PRINT:PRINT "LAB RAT# TOT STD HRS,STD HR RAT,TOT ACT HRS";: PRINT ",ACT LAB RAT":PRINT "-"; FOR X=1 TO 56:PRINT 160 FOR X=1 TO N2:PRINT " ";X;:INPUT F(X),G(X),H(X),K(X): NEXT X 170 FOR I=1 TO N1:M(I)=INT(A(I)*(C(I)-D(I))*100+.5)/100 180 IF LEFT(C$,3%)="PUR" THEN L(I)=INT(E(I)*(A(I)-B(I))*100+.5)/100 ELSE L(I)=INT(D(I)*(A(I)-D(I))*100+.5)/100 190 S3=S3+L(I):S4=M(I)+S4:Z(I)=INT((M(I)+L(I))*100+.5)/100: Z1=Z1+Z(I):NEXT I:Z1=INT(Z1*100+.5)/100 200 FOR I=1 TO N2:N(I)=INT(H(I)*(G(I)-K(I))*100+.5)/100: O(I)=INT(G(I)*(F(I)-H(I))*100+.5)/100:S5=S5+N(I): S6=S6+O(I):Z2=N(I)+O(I)+Z2 210 X(I)=INT((N(I)+O(I))*100+.5)/100:NEXT I 220 IF N2=0 THEN 240 ELSE IF N1=0 THEN 420 230 PRINT FOR X=1 TO 5: PRINT TAB(15);"MATERIAL AND DIRECT LABOR VARIANCES" 240 PRINT:PRINT 250 PRINT TAB(2);"THE MATERIAL PRICE VARIANCE IS": PRINT "CALCULATED AT THE TIME OF ";: IF LEFT(C$,3%)="PUR" THEN PRINT "PURCHASE" ELSE PRINT "ISSUE" 260 PRINT:PRINT:PRINT TAB(30);"MATERIAL VARIANCES" 270 FOR X=1 TO N1:PRINT:PRINT:PRINT "RAW MATERIAL #";X 280 PRINT:PRINT:PRINT TAB(6);"PRICE VARIANCE";: IF L(X)<0 THEN PRINT U$; ELSE PRINT F$; 290 PRINT TAB(50);:PRINT USING T$,ABS(L(X)) 300 PRINT:PRINT TAB(6);"QUANTITY VARIANCE";: IF M(X)<0 THEN PRINT U$; ELSE PRINT F$; 310 PRINT TAB(50);:PRINT USING T1$,ABS(M(X)) 320 PRINT:PRINT TAB (6);"NET VARIANCE";: IF Z(X)<0 THEN PRINT U$; ELSE PRINT F$; 330 PRINT TAB(50);:PRINT USING T1$,ABS(Z(X)) 340 NEXT X:PRINT:PRINT:PRINT:PRINT "SUMMARY:": PRINT "--------":PRINT: PRINT "TOTAL MATERIAL PRICE VARIANCE"; 350 IF S3<0 THEN PRINT U$; ELSE PRINT F$; 360 PRINT TAB(50);:PRINT USING T$,ABS(S3) 370 PRINT "TOTAL MATERIAL QUANTITY VARIANCE";: IF S4<0 THEN PRINT U$; ELSE PRINT F$; 380 PRINT TAB(50);:PRINT USING T1$,ABS(S4) 390 PRINT "NET MATERIAL VARIANCES";: IF Z1<0 THEN PRINT U$; ELSE PRINT F$; 400 PRINT TAB(50);:PRINT USING T1$,ABS(Z1) 410 IF N2=0 THEN 570 420 PRINT:PRINT:PRINT TAB(27);"DIRECT LABOR VARIANCES" 430 FOR X=1 TO N2:PRINT:PRINT:PRINT "DIRECT LABOR RATE #";X 440 PRINT:PRINT:PRINT TAB(6);"RATE VARIANCE";: IF N(X)<0 THEN PRINT U$; ELSE PRINT F$; 450 PRINT TAB(50);:PRINT USING T$,ABS(N(X)) 460 PRINT:PRINT TAB(6);"EFFICIENCY VARIANCE";: IF O(X)<0 THEN PRINT U$; ELSE PRINT F$; 470 PRINT TAB(50);:PRINT USING T1$,ABS(O(X)) 480 PRINT:PRINT TAB(6);"NET VARIANCE";: IF X(X)<0 THEN PRINT U$; ELSE PRINT F$; 490 PRINT TAB(50);:PRINT USING T1$,ABS(X(X)) 500 NEXT X:PRINT:PRINT:PRINT:PRINT "SUMMARY":PRINT "-------": PRINT: PRINT "TOTAL LABOR RATE VARIANCE"; 510 IF S5<0 THEN PRINT U$; ELSE PRINT F$; 520 PRINT TAB(50);:PRINT USING T$,ABS(S5) 530 PRINT "TOTAL LABOR EFFICIENCY VARIANCE";: IF S6<0 THEN PRINT U$; ELSE PRINT F$; 540 PRINT TAB(50);:PRINT USING T1$,ABS(S6) 550 PRINT "NET LABOR VARIANCES";: IF Z2<0 THEN PRINT U$; ELSE PRINT F$; 560 PRINT TAB(50);:PRINT USING T1$,ABS(Z2):PRINT 570 END