SCREEN 12 pi = ATN(1) * 4 t0 = 50 'WINDOW (-t0 * .4, t0 * 2.1)-(t0 * 2.4, -t0 * 0) WINDOW (-t0 * .25, 3 * t0)-(t0 * 1.25, -t0) beta = .6 opnieuw: COLOR 6: LOCATE 3, 25: PRINT USING "(velocity: ##.##c"; beta; PRINT USING " max. distance: ###.# LYs)"; beta * t0 gama = 1 / SQR(1 - beta * beta) t0 = 50 t = t0 / gama x = 0 FOR y = 0 TO t0 'thuisblijver LINE (0, 0)-(0, y), 15: 'LINE -(0, 2 * t0), 8 'reiziger LINE (x, 0)-(x, 2 * t), 0: PSET (x, y / gama), 8 x = beta * y LINE (x, 0)-(x, y / gama), 6: 'LINE -(x, 2 * t), 8 COLOR 7: LOCATE 2, 1: PRINT USING "age homebody: ###.# Ys"; y COLOR 6: LOCATE 3, 1: PRINT USING "age voyager : ###.# Ys"; y / gama FOR dum = 1 TO 100000: NEXT dum NEXT y FOR y = t0 TO 2 * t0 'thuisblijver LINE (0, 0)-(0, y), 15: ' LINE -(0, 2 * t0), 8 'reiziger LINE (x, 0)-(x, 2 * t), 0: PSET (x, (y - 1) / gama), 8: PSET (x, (2 * t0 - (y - 1)) / gama), 8 x = beta * (2 * t0 - y) LINE (x, 0)-(x, y / gama), 6: 'LINE -(x, 2 * t), 8 COLOR 7: LOCATE 2, 1: PRINT USING "age homebody: ###.# Ys"; y COLOR 6: LOCATE 3, 1: PRINT USING "age voyager : ###.# Ys"; y / gama FOR dum = 1 TO 100000: NEXT dum NEXT y wacht: SLEEP: a$ = INKEY$ SELECT CASE a$ CASE "+": IF beta < .8999 THEN beta = beta + .1 CASE "-": IF beta > .11 THEN beta = beta - .1 CASE " ": END CASE ELSE: 'herbegin END SELECT CLS GOTO opnieuw END END