Biorhythms   (Model A)


The theory of biorhythms assumes that the physical, emotional and intellectual capacities of an individual are subject to regular cycles of 23, 28 and 33 days respectively. During each cycle the curve will increase to a high point, then sink below the median value, tracing out a sine wave. These cycles commence at birth, and progress at different rates, producing crossovers, considered to signify 'critical' periods (days when the individual is more prone to accident or error of judgement) when the crossover is one involving the low values of the curves. Especially crucial are the days when all three curves meet. Positive high values at crossovers have a good effect.

The program calculates the cycles from day of birth, and displays a graph of the curves for a period of about one month from the chosen date.

    5  REM**BIORHYTHMS**BBC VERSION BY I.THOM
AS FROM ORIGINAL @ERSKINE
   10 MODE7:GOSUB590
   20 TTAL=0:TTAL2=0:PRINT'CHR$141;CHR$&82;CH
R$157;CHR$&84"          Biorhythms.          
   "CHR$156'CHR$141;CHR$&82;CHR$157;CHR$&84" 
         Biorhythms.             "CHR$156
   30 PRINT'"   Birth Year:"''"   Birth Month
:"''"   Birth Day:"
   40 PRINT'''"   Year Required:"''"   Month 
Required:"''"   Day Required:"
   50 PRINTTAB(0,4)CHR$136:INPUTTAB(14,4)Y:PR
INTTAB(0,4)" "
   60 PRINTTAB(0,6)CHR$136:INPUTTAB(15,6)M:PR
INTTAB(0,6)" "
   70 PRINTTAB(0,8)CHR$136:INPUTTAB(13,8)D:PR
INTTAB(0,8)" "
   80 PRINTTAB(0,12)CHR$136:INPUTTAB(17,12)Y1
:PRINTTAB(0,12)" "
   90 PRINTTAB(0,14)CHR$136:INPUTTAB(18,14)M1
:PRINTTAB(0,14)" "
  100 PRINTTAB(0,16)CHR$136:INPUTTAB(16,16)D1
:PRINTTAB(0,16)" "
  110 TTAL=(Y-1)*365.25
  120 TTAL2=(Y1-1)*365.25
  130 IFM>1 TTAL=TTAL+M(M-1)
  140 IFM1>1 TTAL2=TTAL2+M(M1-1)
  150 IFM-1>1 AND Y/4=Y DIV4 TTAL=TTAL+1
  160 IFM-1>1 AND Y1/4=Y1 DIV4 TTAL2=TTAL2+1
  170 TTAL=TTAL+D:TTAL2=TTAL2+D1
  180 DAY=TTAL2-TTAL
  190 IFM1=M AND D1=D GOSUB520
  200 MODE5:VDU29,0;512;
  210 GOSUB420
  220 P=DAY-(23*(DAY DIV23))
  230 E=DAY-(28*(DAY DIV28))
  240 I=DAY-(33*(DAY DIV33))
  250 COLOUR1:GCOL1,1:PRINTTAB(0,29)"Physical
 cycle."
  260 MOVE0,400*SIN(P*C/(11.5*PI))
  270 FORN=P*C TO(P*C)+1280 STEP4
  280   DRAWN-(P*C),400*SIN(N/(57.5*PI))
  290 NEXTN
  300 COLOUR2:GCOL1,2:PRINTTAB(0,30)"Emotioan
l cycle."
  310 MOVE0,400*SIN(E*C/(14*PI))
  320 FORN=E*C TO (E*C)+1280 STEP4
  330   DRAWN-(E*C),400*SIN(N/(70*PI))
  340 NEXT
  350 COLOUR3:GCOL0,3:PRINTTAB(0,31)"Intellec
tual cyle.";
  360 MOVE0,400*SIN(I*C/(16.5*PI))
  370 FORN=I*C TO (I*C)+1280 STEP4
  380   DRAWN-(I*C),400*SIN(N/(82.5*PI))
  390 NEXT
  400 PRINTTAB(0,0)"Biorhythm for    "
  410 REPEATUNTILGET=32:RUN
  420 REM
  430 C=49.3478261
  440 COLOUR2:PRINTTAB(0,0)"Division=Days"
  450 FORX=1TO25
  460   MOVEC*X,-16:DRAWC*X,16
  470 NEXT
  480 MOVE0,-400:DRAW0,400
  490 PRINTTAB(0,1);D1"/";M1"/";Y1"+"
  500 MOVE0,0:DRAW1280,0
  510 RETURN
  520 RESTORE540:FORI=0TO24:READA,B:SOUND1,-1
5,A,B
  530 SOUND1,0,0,2:NEXT
  540 DATA101,3,101,3,109,5,101,6,121,6,117,1
0
  550 DATA101,3,101,3,109,5,101,6,129,6,121,1
0
  560 DATA101,3,101,3,137,5,121,6,117,6,117,6
,109,10
  570 DATA141,4,141,4,137,5,121,5,129,7,121,1
2
  580 RETURN
  590 RESTORE630:DIMM(11)
  600 FORX=1TO11
  610   READ M(X)
  620 NEXTX
  630 DATA31,59,90,120,151,181,212,243,273,30
4,334
  640 RETURN