home *** CD-ROM | disk | FTP | other *** search
- REM BIORHYTHMS ADAPTED BY W.A.BURTON FROM 'ANONYMOUS' PROGRAM
- REM WRITTEN FOR 11 INCH (66 LINE) HARDCOPY PAPER
-
-
- REM INITIALIZE
- PAGE.NUMBER=1 : COUNTER=0
- DATA JAN,FEB,MAR,APR,MAY,JUN
- DATA JUL,AUG,SEP,OCT,NOV,DEC
- DATA SUNDAY,MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY
- DATA SUN,MON,TUE,WED,THU,FRI,SAT,EXTRA.DAY
- DATA 33,28,23
- DATA I,E,P
- DATA 31,28,31,30,31,30,31,31,30,31,30,31
- DIM DATE(12),F(3),F$(3),MONTH$(12),LONG.DAY$(7),SHORT.DAY$(8)
- FOR I=1 TO 12: READ MONTH$(I): NEXT I
- FOR I=1 TO 7: READ LONG.DAY$(I): NEXT I
- FOR I=1 TO 8: READ SHORT.DAY$(I): NEXT I
- FOR I=1 TO 3: READ F(I): NEXT I
- FOR I=1 TO 3: READ F$(I): NEXT I
- FOR I=1 TO 12: READ DATE(I): NEXT I
-
- DEF FNCYCLE(X,J)=INT(20*SIN(6.28318*X/J)+0.5)+42
- DEF FNFIN(X$)=66-LEN(X$)
- DEF FNSTAR(X$)=INT((64-LEN(X$))/2)
- DEF FNYEAR$(Y)="19"+LEFT$(STR$(Y),2)
- DEF FNSTRING$(LAST$,FIG$,POSITION)=LEFT$(LAST$,POSITION-1) \
- +FIG$+MID$(LAST$,POSITION+1,1000)
-
- INPUT "WHAT IS YOUR NAME";SUBJECT$
- INPUT "BIRTHDATE (MO,DAY,Y)";BM,BD,BY
- BM=INT(BM): BD=INT(BD): BY=INT(BY)
- M=BM: D=BD: Y=BY: GOSUB 1000
- BW=W
- BT=JD
-
- INPUT "CHART START (MO,DAY,YR)";SM,SD,SY : PRINT
- PRINT " *** INSTRUCTIONS ***" : PRINT
- PRINT "THIS PROGRAM IS FORMATTED TO PRINT ON 11 INCH (66 LINE) PAPER." : PRINT
- PRINT "THE NEXT QUESTION YOU WILL BE ASKED WILL BE: CHART DAYS ?"
- PRINT "THIS MEANS 'HOW MANY DAYS SHALL WE PLOT'..."
- PRINT "KEY IN YOUR RESPONSE, BUT DON'T HIT RETURN UNTIL YOU HAVE :"
- PRINT " 1 - ADVANCED THE PAPER IN YOUR PRINTER TO VERY TOP OF PAGE"
- PRINT " 2 - SWITCHED FROM 'LOCAL' TO 'LINE' MODE"
- PRINT "WHEN NOS. 1 & 2 ARE DONE, HIT CARRIAGE RETURN"
- INPUT "CHART DAYS";CHART.DAYS
- FOR PRINT.LOOP=1 TO 4 : PRINT : NEXT PRINT.LOOP
- SM=INT(SM): SD=INT(SD): SY=INT(SY)
- M=SM: D=SD: Y=SY: GOSUB 1000
- SW=W
- ST=JD
-
- REM TIMES TO BIRTH & START
- ELAPSED.DAYS=ST-BT
-
- REM PART 1
- HEADING$="BIO-RHYTHM ANALYSIS FOR "+SUBJECT$
- PART.1$=" "
- STAR=FNSTAR(HEADING$)
- FOR I=1 TO STAR: PART.1$=PART.1$+" ": NEXT I
- PART.1$=PART.1$+HEADING$
- FIN=FNFIN(PART.1$)
- FOR I=1 TO FIN: PART.1$=PART.1$+" ": NEXT I
- PRINT PART.1$
-
- REM PART 2
- HEADING$="STARTING DATE: "+LONG.DAY$(SW)+", "+MONTH$(SM)+" " \
- +STR$(SD)+", "+FNYEAR$(SY)
- PART.2$=" "
- STAR=FNSTAR(HEADING$)
- FOR I=1 TO STAR: PART.2$=PART.2$+" ": NEXT I
- PART.2$=PART.2$+HEADING$
- FIN=FNFIN(PART.2$)
- FOR I=1 TO FIN: PART.2$=PART.2$+" ": NEXT I
- PRINT PART.2$
-
- REM PART 3
- HEADING$="BIRTHDATE: "+LONG.DAY$(BW)+", "+MONTH$(BM)+" "+STR$(BD) \
- +", "+FNYEAR$(BY)
- PART.3$=" "
- STAR=FNSTAR(HEADING$)
- FOR I=1 TO STAR: PART.3$=PART.3$+" ": NEXT I
- PART.3$=PART.3$+HEADING$
- FIN=FNFIN(PART.3$)
- FOR I=1 TO FIN: PART.3$=PART.3$+" ": NEXT I
- PRINT PART.3$
- FOR PRINT.LOOP=1 TO 8 : PRINT : NEXT PRINT.LOOP
- PRINT " *** BIORHYTHM THEORY ***" : PRINT
- PRINT "AT THE TIME WHEN EACH OF US IS BORN, WE ARE GOVERNED BY THE CYCLES"
- PRINT "OF SEVERAL PREDICTABLE RHYTHMS WHICH AFFECT OUR BEHAVIOUR, FORTUNE,"
- PRINT "AND HAPPINESS THROUGHOUT OUR LIFETIMES." : PRINT
- PRINT "BIORHYTHM ANALYSIS ASSERTS THAT THERE ARE THREE PRIMARY RHYTHMS"
- PRINT "WHICH MOST CERTAINLY AFFECT ONE'S ENTIRE LIFE, BUT WHICH CAN BE"
- PRINT "ACCURATELY FORECAST, KNOWING ONLY A SUBJECT'S BIRTHDATE." : PRINT
- PRINT "IT IS ASSUMED THAT AT BIRTH (A CRISIS TIME) THE THREE MAJOR RHYTHMS:"
- PRINT "1) PHYSICAL, 2) EMOTIONAL AND 3) INTELLECTUAL START AN 'UPWARD'"
- PRINT "TREND. THE PERIODS OF THESE RHYTHMS ARE AS FOLLOWS:" : PRINT
- PRINT " PHYSICAL (P) 23 DAY CYCLE"
- PRINT " EMOTIONAL (E) 28 DAY CYCLE"
- PRINT " INTELLECTUAL (I) 33 DAY CYCLE" : PRINT
- PRINT "THESE THREE CYCLES EXHIBIT THE FORM OF A PURE SINE WAVE; THAT IS TO"
- PRINT "SAY THAT EACH WILL BE IN A POSITIVE (UP) POSITION FOR NEARLY HALF"
- PRINT "A FULL CYCLE, AND LIKEWISE EACH FULL CYCLE WILL EXHIBIT NEGATIVE"
- PRINT "(DOWN) QUALITIES DURING ALMOST HALF OF ITS DUTY-CYCLE." : PRINT
- PRINT "FOR EXAMPLE: LET US ASSUME THAT A PHYSICAL (23 DAY) CYCLE STARTED"
- PRINT "AT A POINT THAT WAS NEITHER POSITIVE NOR NEGATIVE (UP NOR DOWN),"
- PRINT "THE CYCLE WOULD START DURING SUCH A 'NEUTRAL' (CRISIS) DAY."
- PRINT "HALF WAY THRU THE 23 DAY CYCLE ANOTHER SUCH DAY WILL OCCUR, AND FI-"
- PRINT "NALLY, THE PHYSICAL CYCLE WILL END ON A THIRD SUCH DAY. THIS LEAVES"
- PRINT "APP. 20 DAYS WHICH ARE EITHER 'UP' OR 'DOWN'." : PRINT
- PRINT "IT CAN BE SAID THAT WHEN ANY OF A PERSON'S THREE BIORHYTHMS"
- PRINT "ARE 'UP', THEN THE PORTION OF THEIR LIFE GOVERNED BY THAT RHYTHM IS"
- PRINT "GOING WELL. WHEN ANY RHYTHM'S ARE 'DOWN', THAT IS A TIME WHEN THE"
- PRINT "CORRESPONDING PART OF THEIR LIFE HAS 'SLOWED DOWN FOR REST & RECHARGE'."
- PRINT
- PRINT "THE CRITICAL DAYS OCCUR WHEN ANY CURVE MAKES A TRANSITION FROM 'UP'"
- PRINT "TO 'DOWN' OR VICE-VERSA. DURING THESE CRISES, A PERSON MAY WELL"
- PRINT "BE BETRAYED BY THE RHYTHM(S) IN TRANSITION. THE CRISIS IS GREATLY"
- PRINT "MAGNIFIED IF MORE THAN ONE RHYTHM IS IN A CRISIS PERIOD. SEVERAL"
- PRINT "TIMES DURING A NORMAL LIFETIME, THREE SIMULTANEOUS CRISES WILL OCCUR"
- PRINT "ON A SINGLE DAY! THESE ARE VERY,VERY BAD DAYS. THE WORST CASE POSSIBLE"
- PRINT "OCCURS WHEN THREE RHYTHMS PASS FROM THEIR 'UP' CYCLES TO THEIR 'DOWN'"
- PRINT "CYCLES ON THE SAME DAY..."
- PRINT "EXAMPLE: PLOT YOUR BIORHYTHM CHART FOR APP. A MONTH BEFORE YOUR THIRTY-"
- PRINT "FIFTH BIRTHDAY."
- FOR PRINT.LOOP=1 TO 8 : PRINT : NEXT PRINT.LOOP
-
- REM PART 4
- BLANK$=" "
- PART.4$=" "+BLANK$+"DOWN"+BLANK$+"CRITICAL"+BLANK$+"UP"
- PRINT TAB(60); "PAGE "; PAGE.NUMBER
- PAGE.NUMBER=PAGE.NUMBER+1
- PRINT: PRINT PART.4$
- FOR PRINT.LOOP=1 TO 68 : PRINT "-"; : NEXT PRINT.LOOP : PRINT
- IF Y/4 = INT(Y/4) THEN LY=1 ELSE LY=0
- OUTPUT$=SHORT.DAY$(SW)+" "+STR$(SD)+MONTH$(SM)
- REM SET UP STARTING POSITIONS
- DUMMY$=" : "
- REM START CYCLE
- FOR J=1 TO CHART.DAYS
- START$=SHORT.DAY$(W)+" "+STR$(D)
- IF J = 1 OR D = 1 THEN START$=START$+" "+MONTH$(M)
- OUTPUT$=START$+MID$(DUMMY$,LEN(START$)+1,1000)
- FOR I=1 TO 3
- POSIT=FNCYCLE(ELAPSED.DAYS,F(I))
- OUTPUT$=FNSTRING$(OUTPUT$,F$(I),POSIT)
- NEXT I
- PRINT OUTPUT$
- COUNTER=COUNTER+1
- IF COUNTER > 55 THEN GOSUB 2000
- IF J = CHART.DAYS THEN 600
- L=DATE(M)
- IF M = 2 AND LY = 1 THEN L=29
- D=D+1
- IF D LE L THEN 300
- D=1
- M=M+1
- IF M > 12 THEN M=1
- L=DATE(M)
- 300 ELAPSED.DAYS=ELAPSED.DAYS+1
- W=W+1
- IF SHORT.DAY$(W)="EXTRA.DAY" THEN W=1
- 320 NEXT J
- 600 FOR PRINT.LOOP=1 TO 20 : PRINT : NEXT PRINT.LOOP
- FOR PRINT.LOOP=1 TO 10 : PRINT.LOOP=PRINT.LOOP-1 : NEXT PRINT.LOOP
-
- 1000 IF M > 2 THEN 1010
- MM=M+13
- Y=Y-1
- GO TO 1020
- 1010 MM=M+1
- 1020 JD=INT(365.25*Y)+INT(30.6001*MM)+D
- Q=(JD)/7
- W=7*(Q-INT(Q))+1
- RETURN
-
- REM 'PAGINATE IT ALL'
- 2000 COUNTER=0
- FOR PRINT.LOOP=1 TO 6 : PRINT : NEXT PRINT.LOOP
- PRINT TAB(60); "PAGE "; PAGE.NUMBER
- PRINT : PAGE.NUMBER=PAGE.NUMBER+1
- PRINT PART.4$
- FOR PRINT.LOOP=1 TO 68 : PRINT "-"; : NEXT PRINT.LOOP : PRINT
- RETURN
-