|
DataMuseum.dkPresents historical artifacts from the history of: Q1 computer |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Q1 computer Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 5293 (0x14ad) Types: Q1_Text, reclen=79 Notes: q1file Names: »FÄRDPLAN«
└─⟦95b7b493b⟧ Bits:30008570 DDMQ1-0005_Vers_3_2_BUDGET └─⟦this⟧ »FÄRDPLAN«
PUT FILE(DISPLAY) SKIP LIST('GRADER, MIN, SEK, S ELLER N STARTLATITUD '); DCL B1 CHAR(1); DCL B2 CHAR(1); DCL B3 CHAR(1); DCL B4 CHAR(1); DCL G FIXED(13,8); DCL AM FIXED(13,8); DCL S FIXED(13,8); DCL G1 FIXED(13,8); DCL AM1 FIXED(13,8); DCL S1 FIXED(13,8); DCL G2 FIXED(13,8); DCL AM2 FIXED(13,8); DCL S2 FIXED(13,8); DCL G3 FIXED(13,8); DCL AM3 FIXED(13,8); DCL S3 FIXED(13,8); DCL SLONG FIXED(13,8); DCL SLAT FIXED(13,8); DCL DLAT FIXED(13,8); DCL DLONG FIXED(13,8); DCL DIST FIXED(13,8); DCL HDG FIXED(13,8); GET LIST(G,AM,S,B1); PUT FILE(DIPLAY) SKIP LIST('GRADER, MIN, SEK, E ELLER W STARTLONGITUD '); GET LIST(G1,AM1,S1,B2); PUT FILE(DISPLAY) SKIP LIST('GRADER, MIN, SEK, S ELLER N DEST. LATITUD '); GET LIST(G2,AM2,S2,B3); PUT FILE(DISPLAY) SKIP LIST('GRADER, MIN, SEK, E ELLER W DEST.LONGITUD '); GET LIST(G3,AM3,S3,B4); PUT SKIP(6) LIST(' STARTLATITUDEN: '); PUT EDIT(G) (P'ZZV.')(AM)(P'ZZV.') (S) (P'ZZ',X(1)); PUT LIST(B1); PUT SKIP(2) LIST(' STARTLONGITUDEN: '); PUT EDIT(G1) (P'ZZV.') (AM1) (P'ZZV.') (S1) (P'ZZ',X(1)); PUT LIST(B2); PUT SKIP(2) LIST(' DEST.LATITUDEN: '); PUT EDIT(G2) (P'ZZV.') (AM2) (P'ZZV.') (S2) (P'ZZ',X(1)); PUT LIST(B3); PUT SKIP(2) LIST(' DEST.LONGITUDEN: '); PUT EDIT(G3) (P'ZZV.') (AM3) (P'ZZV.') (S3) (P'ZZ',X(1)); PUT LIST(B4); PI = 57.29577951; GG = G + AM / 60 + S / 3600; IF(B1 = 'S') THEN GG = - GG; SLAT = GG / PI; GG1 = G1 + AM1 / 60 + S1 / 3600; IF(B2 = 'E') THEN GG1 = - GG1; SLONG = GG1 / PI; GG2 = G2 + AM2 / 60 + S2 / 3600; IF(B3 = 'S') THEN GG2 = - GG2; DLAT = GG2 / PI; GG3 = G3 + AM3 / 60 + S3 / 3600; IF(B4 = 'E') THEN GG3 = - GG3; RAD = 1.5707963; DLONG = GG3 / PI; DIST = RAD - ASIN(SIN(SLAT) * SIN(DLAT)+COS(SLAT)*COS(DLAT)*COS(SLONG-DLONG)); HDG = RAD -ASIN((SIN(DLAT)-COS(DIST) * SIN(SLAT))/(SIN(DIST) *COS(SLAT))); DIST = DIST * 60 * PI; HDG = HDG * PI; IF(SIN(SLONG - DLONG) < 0) THEN HDG = 360 - HDG; PUT SKIP(4) EDIT(DIST) (X(20),P'ZZZZZ9V.9999'); PUT LIST(' DISTANSMINUTER'); PUT SKIP(2) EDIT(HDG) (X(20),P'ZZZZZ9V.9999'); PUT LIST(' GRADER (DECIMALT)'); END;