home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
cpm
/
basic
/
math.ark
/
BLAKHOLE.BAS
< prev
next >
Wrap
BASIC Source File
|
1986-12-20
|
3KB
|
66 lines
10 REM THIS IS PROGRAM BLAKHOLE.BAS, A PROGRAM THAT ASSESSES
20 REM THE PROPERTIES OF NEWTONIAN BLACKHOLES
30 REM YOU ARE REQUIRED TO INPUT ONE OF THE PROPERTIES:
40 REM MASS, RADIUS OR DENSITY; THE PROGRAM WILL RETURN THE OTHERS.
50 REM THIS PROGRAM WAS WRITTEN BY MIKE FINERTY, 5 NOVEMBER 1984
60 REM *************************************************************
70 DIM A$(4)
80 LET L = 2.3052585#
90 LET K = 3.22E+27
100 PRINT "PROGRAM RETURNS THE CRITICAL VALUES OF R, D & M, GIVEN ONE OF THEM
110 PRINT "PLEASE SELECT ONE:"
120 PRINT
130 PRINT "R ..... RADIUS IN CENTIMETERS"
140 PRINT
150 PRINT "D ..... DENSITY IN GRAMS/CUBIC CENTIMETER"
160 PRINT
170 PRINT "M ..... MASS IN GRAMS"
180 PRINT
190 PRINT "MLOG .. LOGARITHM OF MASS IN GRAMS"
200 PRINT
210 INPUT "SELECT ONE HERE:";A$
220 INPUT "WHAT VALUE FOR THIS VARIABLE?";QUANT
230 IF ABS(LOG(QUANT)/L)>34 THEN PRINT "OUT OF RANGE OF MBASIC"
240 IF ABS(LOG(QUANT)/L)>34 THEN GOTO 600
250 IF A$ = "R" THEN GOTO 300
260 IF A$ = "D" THEN GOTO 370
270 IF A$ = "M" THEN GOTO 450
280 IF A$ = "MLOG" THEN GOTO 530
290 REM GIVEN RADIUS WE CALCULATE THE FOLLOWING:
300 DLOG = LOG(K)/L - 2*LOG(QUANT)/L
310 MLOG = .622089 + LOG(K)/L + LOG(QUANT)/L
320 SOLS = MLOG - 33.2989
330 PRINT "DENSITY =";10^(DLOG - INT(DLOG));"TEN";INT(DLOG);" GRAMS/CC"
340 PRINT "MASS =";10^(MLOG-INT(MLOG));"TEN";INT(MLOG);" GRAMS"
350 PRINT "SOLAR MASSES =";10^(SOLS - INT(SOLS));"TEN";INT(SOLS);"SOLS"
360 GOTO 600
370 REM GIVEN DENSITY WE CALCULATE THE FOLLOWING:
380 RLOG = .5*(LOG(K)/L-LOG(QUANT)/L)
390 MLOG = .622089 + .5*(3*LOG(K)/L-LOG(QUANT)/L)
400 SOLS = MLOG - 33.2989
410 PRINT "RADIUS = ";10^(RLOG-INT(RLOG));"TEN";INT(RLOG);"CENTIMETERS"
420 PRINT "MASS = ";10^(MLOG - INT(MLOG));"TEN";INT(MLOG);"GRAMS"
430 PRINT "SOLAR MASSES =";10^(SOLS-INT(SOLS));"TEN";INT(SOLS);"SOLS"
440 GOTO 600
450 REM GIVEN MASS IN GRAMS WE CALCULATE THE FOLLOWING:
460 SOLS = LOG(QUANT)/L - 33.2989
470 DLOG = 1.24418 + 3*LOG(K)/L - 2*LOG(QUANT)/L
480 RLOG = -.622089 + LOG(QUANT)/L - LOG(K)/L
490 PRINT "SOLAR MASSES = "10^(SOLS-INT(SOLS));"TEN";INT(SOLS);"SOLS"
500 PRINT "DENSITY = "; 10^(DLOG-INT(DLOG));"TEN";INT(DLOG);"GM/CC"
510 PRINT "RADUIS =";10^(RLOG-INT(RLOG));"TEN";INT(RLOG);"CM"
520 GOTO 600
530 REM GIVEN COMMON LOG (BASE 10) OF MASS, WE CALCULATE:
540 SOLS = QUANT - 33.2989
550 DLOG = 1.24418 + 3*LOG(K)/L - 2*QUANT
560 RLOG = -.622089 + QUANT - LOG(K)/L
570 PRINT "SOLAR MASSES = ";10^(SOLS-INT(SOLS));"TEN";INT(SOLS);"SOLS"
580 PRINT "DENSITY = ";10^(DLOG-INT(DLOG));"TEN";INT(DLOG);"GM/CC"
590 PRINT "RADIUS = ";10^(RLOG-INT(RLOG));"TEN";INT(RLOG);"CM"
600 PRINT "--ooO0Ooo--"
610 PRINT "DO YOU WANT ANOTHER OBJECT? Y/N?"
620 INPUT ANS$
630 IF ANS$ = "Y" OR ANS$="y" THEN GOTO 80
640 END
ooO0Ooo--"
610 PRINT "