1 DIM A(12),M$(12) 2 DATA 0,31,59,90,120,151,181,212,243,273,304,334 3 FOR I=1 TO 12 : READ A(I) : NEXT 5 PI=3.14159 7 PRINT : PRINT 10 PRINT "THIS PROGRAM WILL PRINT YOUR PERSONAL BIO-RYTHM ANALTSIS" 20 PRINT " FOR A 30 DAY PERIOD STARTING AT ANY DATE YOU SELECT." 30 PRINT "DATES SHOULD BE ENTERED IN NUMERICAL FORM WITH THE MONTH," 40 PRINT "DAY AND YEAR SEPARATED BY COMMAS. . I.E. JULY 4,1976 WOULD" 50 PRINT "BE ENTERED AS 7,4,76." 55 REM LINE 475 SETS THE NUMBER OF DAYS IN A RUN 70 PRINT : PRINT 80 PRINT "WHAT IS THE DATE AT WHICH YOU WOULD LIKE THE ANALYSIS" 90 PRINT "TO START?" 100 INPUT M,D,Y 105 M=INT(M) : D=INT(D) : Y=INT(Y) 110 INPUT "WHAT IS THE DATE OF YOUR BIRTH ";MB,DB,YB 115 MB=INT(MB) : DB=INT(DB): YB=INT(YB) 117 INPUT "WHAT IS YOUR NAME ";A$ 120 PRINT 130 DEF FNI(X)=INT(20*SIN(2*PI*X/33)+.5) 140 DEF FNE(X)=INT(20*SIN(2*PI*X/28)+.5) 150 DEF FNP(X)=INT(20*SIN(2*PI*X/23)+.5) 160 T=INT(D+365.25*Y+A(M)+.01*M-.03) 170 TB=INT(DB+365.25*YB+A(MB)+.01*MB-.03) 180 X=T-TB 183 V=INT((40-LEN(A$))/2) 184 RB=TB-1-INT((TB-1)/7)*7 210 DATA MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY 230 FOR I= 0 TO 6 : READ DAY$(I) : NEXT 240 DATA MON,TUE,WED,THU,FRI,SAT,SUN 250 FOR I=0 TO 6 : READ D$(I) : NEXT 255 PRINT : PRINT 260 DATA JANUARY,FEBRUARY,MARCH,APRIL,MAY,JUNE,JULY,AUGUST 265 DATA SEPTEMBER,OCTOBER,NOVEMBER,DECEMBER 272 FOR I=1 TO 12 : READ M$(I) : NEXT 273 PRINT SPC(2): FOR I=1 TO V : PRINT "*";:NEXT 274 PRINT "BIO-RHYTHM ANALYSIS FOR "A$; 276 PRINT "*";:IF POS(0)<66 THEN 276 278 PRINT : PRINT 280 R=T-1-INT((T-1)/7)*7 282 LE=21+LEN(DAY$(R))+LEN(M$(M))+LEN(STR$(D))+LEN(RIGHT$(STR$(Y),2)) 283 V2=INT((64-LE)/2) 285 PRINT SPC(2): FOR I=1 TO V2 : PRINT "*";:NEXT 290 PRINT "STARTING DATE: "DAY$(R)", "M$(M)STR$(D)", 19"; 292 PRINT RIGHT$(STR$(Y),2); 295 PRINT "*"; : IF POS(0)<66 THEN 295 297 PRINT:PRINT 300 LL=LEN(DAY$(RB))+LEN(M$(MB))+LEN(STR$(DB))+LEN(RIGHT$(STR$(YB),2)) 301 LB=LL+18 302 VB=INT((64-LB)/2) 303 PRINT SPC(2): FOR I=1 TO VB : PRINT "*";:NEXT 304 PRINT "BIRTH DATE: "DAY$(RB)", "M$(MB)STR$(DB)", 19"; 305 PRINT RIGHT$(STR$(YB),2); 306 PRINT "*"; : IF POS(0)<66 THEN 306 307 PRINT :PRINT:PRINT 308 PRINT TAB(20)"DOWN",TAB(40)"CRITICAL",TAB(63)"UP" 310 PRINT D$(R)D;M$(M); 320 F(0)=42 : F$(0)="*" 330 F(1)=42+FNI(X) : F$(1)="I" 340 F(2)=42+FNE(X):F$(2)="E" 350 F(3)=42+FNP(X):F$(3)="P" 360 FOR I=0 TO 2 370 FOR J=I+1 TO 3 380 IF F(I)X THEN 320 475 IF Z=29 THEN 570 480 R=R+1 : IF R=7 THEN R=0 490 D=D+1 : IF M=4 OR M=6 OR M=9 OR M=11 THEN L=30 : GOTO 530 500 IF M=2 AND Y/4=INT(Y/4) THEN L=29 : GOTO 530 510 IF M=2 THEN L=28 : GOTO 530 520 L=31 530 IF D>L THEN D=D-L : M=M+1 : GOTO 550 540 PRINT D$(R); D; : Z=Z+1 : GOTO 320 550 IF M=13 THEN M=1 : Z=Z+1 : GOTO 310 560 Z=Z+1 : GOTO 310 570 PRINT:PRINT 580 END