10 P1=3.141592654 20 CLS 30 K0=10 40 DIM B(10),L(10) 50 R=1.745329251E-2 60 PRINT "MAP CHECK - SURVEY CLOSURE & AREA" 70 PRINT "OPEN (1) OR CLOSED (0) SURVEY"; 80 INPUT F 90 IF F=0 THEN 120 100 PRINT "ORIGIN: NORTHING, EAST"; 110 INPUT N,E 120 CLS : PRINT "NEXT SET OF LEGS:" 130 G=H 140 FOR K=1 TO K0 150 GOSUB 2000 160 IF Q=0 THEN 190 170 G=G+1 180 GOTO 250 190 IF K=K0 THEN 240 200 FOR J=K+1 TO K0 210 B(J)=0 220 L(J)=0 230 NEXT J 240 K=K0 250 NEXT K 260 PRINT "CORRECT WHICH LEG IN THIS SET (0=NO MORE CHANGES)"; 270 INPUT K 280 IF K=0 THEN 320 290 K=K-H 300 GOSUB 2000 310 GOTO 260 320 PRINT 330 PRINT "LEG/DIR. AZIMUTH/DIST."; 340 PRINT " DEL N/DEL E NORTHING/EASTING" 350 X=N : GOSUB 2280 : F1=X : X=E : GOSUB 2280 360 PRINT ,,,F1;"/";X 370 PRINT 380 FOR K=1 TO K0 390 L1=L(K) 400 IF L1<0 THEN 1080 410 IF L1=0 THEN 970 420 L=L(K)*COS(B(K)*R) 430 D=L(K)*SIN(B(K)*R) 440 N=N+L 450 E=E+D 460 A=A-E*L+N*D 470 PRINT H+K;"/"; 480 IF B(K)=0 THEN 500 490 GOTO 520 500 PRINT "N"; 510 GOTO 860 520 IF B(K)<90 THEN 540 530 GOTO 560 540 PRINT "NE"; 550 GOTO 860 560 IF B(K)=90 THEN 580 570 GOTO 600 580 PRINT "E "; 590 GOTO 860 600 IF B(K)<180 THEN 620 610 GOTO 640 620 PRINT "SE"; 630 GOTO 860 640 IF B(K)=180 THEN 660 650 GOTO 680 660 PRINT "S "; 670 GOTO 860 680 IF B(K)<270 THEN 700 690 GOTO 720 700 PRINT "Sw"; 710 GOTO 860 720 IF B(K)=270 THEN 740 730 GOTO 760 740 PRINT "W "; 750 GOTO 860 760 IF B(K)<360 THEN 780 770 GOTO 800 780 PRINT "Nw"; 790 GOTO 860 800 IF B(K)<360 THEN 820 810 GOTO 840 820 PRINT "N "; 830 GOTO 860 840 B(K)=B(K)-360 850 GOTO 480 860 D1=INT(B(K)) 870 M1=(B(K)-D1)*60 880 M=INT(M1) 890 S=INT((M1-M)*60+.5) 900 PRINT " ";D1;M;S;"/"; 910 X=L(K) : GOSUB 2280 : F1=X : X=L : GOSUB 2280 920 PRINT F1,X; 930 X=D : GOSUB 2280 : F1=X : X=N : GOSUB 2280 : F2=X 940 X=E : GOSUB 2280 : PRINT "/";F1;F2;"/";X 950 PRINT 960 L(K)=L1 970 NEXT K 980 H=G 990 PRINT "ANY MORE LEGS (1=YES, 0=NO)"; 1000 INPUT U 1010 IF U<>O THEN 120 1020 IF F<>0 THEN 1070 1030 A=ABS(A/2) : X=A : GOSUB 2280 1040 PRINT "PLOT AREA IS ";X;"SQ.FT." 1050 PRINT 1060 PRINT "PLOT AREA IS ";INT(A/43560*1E8+.5)/1E8;"ACRES" 1070 GOTO 9999 1080 C=ABS(B(K)-B(K-1)) 1090 C=ABS(180-C) 1100 D=-L1 1110 L(K)=D 1120 A1=C/180*P1*D*D 1130 C1=r*D*SIN(C/2*R) 1140 T=D*TAN(C/2*R) 1150 B9=B(K)-B(K-1) 1160 IF B9<-180 THEN 1210 1170 IF B9>180 THEN 1190 1180 IF B9>0 THEN 1210 1190 A=A+A1 1200 GOTO 1220 1210 A=A-A1 1220 D1=INT(C) 1230 M1=(C-D1)*60 1240 M=INT(M1) 1250 S=INT((M1-M)*60+.5) 1260 X=D : GOSUB 2280 : F1=X : X=A1 : GOSUB 2280 1270 PRINT " ARC: ";D1;M;S;"R=";F1;"A=";X;"C="; 1280 X=C1 : GOSUB 2280 : F1=X : X=T : GOSUB 2280 1290 PRINT F1;"T=";X 1300 PRINT 1310 GOTO 420 2000 B(K)=0 2010 L(K)=0 2020 PRINT "LEG NO. ";H+K;":QUADRANT,DEGREES,MINUTES,SECONDS"; 2030 INPUT Q,D,M,S 2040 IF Q=0 THEN 2270 2050 IF Q>4 THEN 2020 2060 IF Q<0 THEN 2020 2070 IF D<0 THEN 2020 2080 IF M<0 THEN 2020 2090 IF S<0 THEN 2020 2100 B(K)=D+(M+S/60)/60 2110 IF B(K)>90 THEN 2020 2120 IF Q=1 THEN 2230 2130 IF Q=2 THEN 2150 2140 GOTO 2170 2150 B(K)=180-B(K) 2160 GOTO 2230 2170 IF Q=3 THEN 2190 2180 GOTO 2210 2190 B(K)=180+B(K) 2200 GOTO 2230 2210 IF Q<>4 THEN 2230 2220 B(K)=360-B(K) 2230 PRINT "DISTANCE (NEGATIVE IF OUTWARD RADIUS)"; 2240 INPUT L(K) 2250 IF L(K)>0 THEN 2270 2260 IF ABS(L(K))<>ABS(L(K-1)) THEN 2230 2270 RETURN 2280 X=INT(X*1000+.5)/1000 2290 RETURN 9999 END