|
Este programa está escrito en Basic, que es un lenguaje de programación muy fácil, pero que ya se usa muy poco porque es muy lento; por tanto tener un poco de paciencia. Se puede utilizar bajándolo de internet e instalándolo en el ordenador. 5 REM Reloj de Sol Horizontal en Basic 10 OPEN "lpt1" FOR OUTPUT AS #2 20 pi = 3.14159265#: gr = pi/180 30 INPUT "¿Latitud Norte del lugar (en grados)"; b 40 IF b < 0 THEN 30 50 INPUT "¿Longitud del lugar en grados (+ si es Oeste y - si es Este)"; l 60 INPUT "¿Meridiano central en grados (+ si es Oeste y - si es Este)"; l0 70 INPUT "¿Altura del reloj"; hs 80 INPUT "¿Anchura de la mitad del reloj"; ws 90 INPUT "¿Tiempo entre las líneas horarias (en minutos)"; g 100 PRINT #2, "Latitud del lugar"; b; "Norte" 110 IF l < 0 THEN PRINT #2, "Longitud del lugar = "; l; "Este" 115 IF l > 0 THEN PRINT #2, "Longitud de lugar = "; l; "Oeste" 120 PRINT #2, "Longitud del meridiano central = "; l0 125 PRINT #2, "Tiempo entre líneas horarias = "; g; "minutos" 130 rs = ws/hs: br = b*gr: zs = gr*(l0-l): mr = g*gr/4: H = zs-pi/2 132 PRINT #2, "Punta del estilo en (0, -"; hs; ","; hs*tan(br); ")" 135 DO 136 IF H < -pi/2 THEN H = H + mr 137 LOOP UNTIL H > -pi/2 138 PRINT #2, "" 140 tanalf = TAN(H)*SIN(br) 145 IF H > pi/2 THEN END 150 IF tanalf < -rs OR tanalf > rs THEN 200 160 x = tanalf*hs 170 PRINT #2, "H = "; H/(15*gr)+12-(l0-l)/15; TAB(15); "x = "; x 175 PRINT #2, "" 180 H = H+mr 190 GOTO 140 200 y = -ws/ABS(tanalf) 210 PRINT #2, "H = "; H/(15*gr)+12-(l0-l)/15; "y = "; y 215 PRINT #2, "" 220 H = H+mr 230 GOTO 140 |