DIM freq AS DOUBLE DIM frequency AS DOUBLE REM By Louis Dudzik 10 p = 0 x = 0 CLS CONST trt = 1.059463094# PRINT "This program outputs the frequencies of the notes on the" PRINT "tempered chromatic scale used in music." PRINT "Using A = 440 hz. (12th root of 2) = 1.059463094" PRINT "Starting at low A = 27.5 hz and going 6 octaves." PRINT "Standard bass guitar starts at E = 41 hz." PRINT "" PRINT "Press to view on screen." PRINT "Enter 1 to output to printer." PRINT "Enter 2 to quit." INPUT x IF x = 2 THEN SYSTEM IF x = 1 THEN p = 1 GOTO 100 END IF IF x = 0 THEN GOTO 100 GOTO 10 100 IF p = 1 THEN LPRINT "This program outputs the frequencies of the notes on the" LPRINT "tempered chromatic scale used in music." LPRINT "Using A = 440 hz. (12th root of 2) = 1.059463094" LPRINT "Starting at low A = 27.5 hz and going 6 octaves." LPRINT "Standard bass guitar starts at E = 41 hz." LPRINT "" END IF freq = 27.5 CLS FOR oct = 1 TO 6 FOR note = 1 TO 12 IF note = 1 THEN note$ = "A " IF note = 2 THEN note$ = "A#" IF note = 3 THEN note$ = "B " IF note = 4 THEN note$ = "C " IF note = 5 THEN note$ = "C#" IF note = 6 THEN note$ = "D " IF note = 7 THEN note$ = "D#" IF note = 8 THEN note$ = "E " IF note = 9 THEN note$ = "F " IF note = 10 THEN note$ = "F#" IF note = 11 THEN note$ = "G " IF note = 12 THEN note$ = "G#" frequency = (CLNG(freq * 100)) / 100 PRINT note$; "="; frequency, "hz" IF p = 1 THEN LPRINT note$; "="; frequency, "hz" freq = freq * trt NEXT note PRINT "" PRINT "Press for the next octave." IF p = 1 THEN LPRINT "" INPUT "Enter 3 to end. ", x IF x = 3 THEN GOTO 10 CLS NEXT oct GOTO 10