10 ' *****************
20 ' * BIORYTHME * 30 ' * par * 40 ' * Henri Bittner * 50 ' * sur Amstrad * 60 ' * 1 mars 1986 * 70 ' ***************** 80 ' 90 DIMjm(12),jd(12) 100 FORi=1TO12:READa,b:jm(i)=a:jd(i)=b:NEXT 110 js$(0)="LUNDI":js$(1)="MARDI":js$(2)="MERCREDI":js$(3)="JEUDI":js$(4)="VENDREDI":js$(5)="SAMEDI":js$(6)="DIMANCHE" 120 CLS:MODE 1:INK 0,13:INK 1,0:INK 2,3:INK 3,1:BORDER 13:PEN 1 130 PRINT"VOULEZ-VOUS LES INSTRUCTIONS ? (O/N)" 140 a$=INKEY$:IFa$=""THEN140 150 IFa$="O"ORa$="o"THEN1460 155 IF a$="N" OR a$="n" THEN 170 160 GOTO 140 165 ' 170 ' * ENTREE DES DATES * 180 ' 190 CLS:MODE 1 200 PEN3:PRINT"ENTREZ VOTRE DATE DE NAISSANCE":PRINT:PEN1 210 INPUT "ANNEE --->";an:PRINT:GOSUB 980 220 INPUT"MOIS ---->";mois:PRINT:GOSUB1000 230 INPUT"JOUR ---->";jour:PRINT:GOSUB1020 240 a=an-1900:m=mois:j=jour 250 GOSUB 1230:nj0=nj 260 PEN2:PRINT"VOUS ETES NE UN ";js$(js):PEN3:PRINT 270 PRINT"ENTREZ LA DATE A EXAMINER":PEN 1:PRINT 280 INPUT"ANNEE --->";an:PRINT:GOSUB 980 290 INPUT"MOIS ---->";mois:PRINT:GOSUB1000 300 INPUT"JOUR ---->";jour:PRINT:GOSUB1020 310 a=an-1900:m=mois:j=jour 320 GOSUB1230:njv=nj-nj0:GOSUB1060 330 PEN2:PRINT"VOUS AVEZ VECU ";njv;" JOURS" 340 ' 350 ' * CALCUL DU BIORYTHME * 360 ' 370 jr=njv-jour 380 FOR i=1 TO 33 390 IF(jr+i)/23-INT((jr+i)/23)=0THENIFF=0THENF=i 400 IF(jr+i)/28-INT((jr+i)/28)=0THENIFD=0THEND=i 410 IF(jr+i)/33-INT((jr+i)/33)=0THENE=i 420 IF F>0 AND D>0 AND E>0 THEN 440 430 NEXT i 440 F1=F:D1=D:E1=E 450 IF F>12 THEN F2=F-12:IF F+11<=M1 THEN F3=F+11:GOTO 480 460 IF F2>0 THEN 480 470 F2=F+11:IF F+23<=M1 THEN F3=F+23 480 IF D>14 THEN D2=D-14:IF D+14<=M1 THEN D3=D+14 ELSE 510 490 IF D2>0 THEN 510 500 D2=D+14:IF D+28<=M1 THEN D3=D+28 510 IFE+16<=M1THENE2=E+16 520 IF E-17>0 THEN E2=E-17 530 IF E>M1 THEN E1=0 540 INK 3,1:PEN 3:LOCATE 1,25:PRINT"JOURS CRITIQUES : PRESSEZ UNE TOUCHE":CALL &BB06 550 GOSUB 1110 560 LOCATE6,23:PEN2:PRINT"GRAPHIQUE : PRESSEZ UNE TOUCHE":CALL&BB06 570 ' 580 ' * PAGE GRAPHIQUE * 590 ' 600 CLS 610 MODE 1 620 INK0,0:INK1,6:INK2,14:INK3,16:BORDER0 630 LOCATE12,1:PEN1:PRINT"BIORYTHME ";mois;an 640 PLOT 65,200:DRAW 561,200,3 650 FOR i=65 TO 567 STEP 16 660 PLOT i,100:DRAW i,300,3 670 NEXT 680 LOCATE 3,13:PRINT"0" 690 LOCATE 37,13:PRINT"0" 700 LOCATE 3,10:PRINT"+" 710 LOCATE 37,10:PRINT"+" 720 LOCATE 3,16:PRINT"-" 730 LOCATE 37,16:PRINT"-" 740 ' 750 ' * courbes * 760 ' 770 E=E-1:D=D-1:F=F-1:Z=16*M1 780 DEG 790 LOCATE4,4:PRINT"PHYSIQUE" 800 C9=CINT(360*M1/23):A=360*F/23:T=F*16:c=1:GOSUB1330:PEN2 810 LOCATE14,4:PRINT"EMOTIONNEL" 820 C9=CINT(360*M1/28):A=360*D/28:T=D*16:c=2:GOSUB1330:PEN3 830 PEN 3:LOCATE 26,4:PRINT"INTELLECTUEL" 840 C9=CINT(360*M1/33):A=360*E/33:T=E*16:c=3:GOSUB1330 850 ' 860 LOCATE2+jour,20:PRINTUSING"##";jour;:PRINTCHR$(94) 870 LOCATE 9,24:PEN 3:PRINT"Autre Biorythme -->[B] 880 LOCATE 9,25:PEN 1:PRINT"Quitte ----------->[Q] 890 a$=INKEY$:IF a$="" THEN 890 900 IF a$="q"OR a$="Q"THEN CALL 0 910 'IF a$="q"OR a$="Q"THEN CALL 0 920 RUN 930 ' 940 ' * ENSEMBLE DES SOUS PROGRAMMES * 950 ' 960 ' * Controle des donnees et messages d'erreurs * 970 ' 980 IFan<1900ORan>2050THENPEN2:SOUND1,142,10:PRINT"Plage du calendrier :":PRINT:PRINT"Du lundi 1/1/1900 au samedi 31/12/2050":GOTO1070 990 RETURN 1000 IFmois<1ORmois>12THENPEN2:SOUND1,142,10:PRINT"Erreur !":GOTO1070 1010 RETURN 1020 IFmois=2THENIFan>1900ANDan/4-INT(an/4)=0THENM1=jm(mois)+1:GOTO1040 1030 M1=jm(mois) 1040 IFjour<1ORjour>M1THENPEN2:SOUND1,142,10:PRINT:PRINT"Erreur , ce mois a ";M1;" jours !":GOTO1070 1050 RETURN 1060 IFnjv>=0THENRETURNELSEPEN2:SOUND1,142,10:PRINT"Erreur , date anterieure a la naissance" 1070 PEN 3:LOCATE 1,23:PRINT"PRESSEZ UNE TOUCHE ET RECOMMENCEZ !":CALL &BB06:GOTO 190 1080 ' 1090 ' * Affichage des dates * 1100 ' 1110 CLS:INK0,13:INK1,0:INK2,1:INK3,3:PAPER0:BORDER13:PEN3 1120 LOCATE9,1:PRINT"DATE DES JOURS CRITIQUES":PEN1:PRINT:PRINT 1130 FOR i=1 TO M1 1140 IFF1=iORF2=iORF3=iTHENPRINT" PHYSIQUE ------>";:PRINTUSING" ## ";i;:PRINT"-";mois;"-";an:PRINT 1150 IFD1=iORD2=iORD3=iTHENPRINT" EMOTIONNEL ---->";:PRINTUSING" ## ";i;:PRINT"-";mois;"-";an::PRINT 1160 IFE1=iORE2=iTHENPRINT" INTELLECTUEL -->";:PRINTUSING" ## ";i;:PRINT"-";mois;"-";an:PRINT 1170 NEXT 1180 RETURN 1190 ' 1200 ' * calcul du jour de la semaine * 1210 ' et du nombre de jours vecus 1220 ' 1230 IFa>0THENj=j-1ELSEIFmois>2THENj=j-1 1240 IF m=2 AND a/4-INT(a/4)=0 THEN j=j-1 1250 m=m-1:IF m=0 THEN m=12:a=a-1 1260 nj=INT(a*365.25)+jd(m)+j+bis:njj=nj 1270 IF njj>32767 THEN njj=njj-32767 1280 js=njj MOD 7 1290 RETURN 1300 ' 1310 ' * trace des courbes * 1320 ' 1330 ORIGIN65+T,200 1340 FORi=0-ATOC9-A 1350 PLOTi*Z/C9,100*SIN(i),c 1360 NEXT:RETURN 1370 LOCATE2+jour,20:PRINTUSING"##";jour;:PRINTCHR$(94) 1380 ' 1390 ' * datas jours du mois et jours depuis le debut de l'annee * 1400 ' 1410 DATA 31,31,28,59,31,90,30,120,31,151,30,181,31,212,31,243,30,273,31,304,30,334,31,365 1420 ' 1430 ' * EXPLICATIONS ( facultatif ) 1440 ' le cas echeant , supprimer les lignes 130 a 150 * 1450 ' 1460 MODE 2:CLS:INK 0,13:INK 1,0:PAPER 0:PEN 1 1470 PRINT"Chacun de nous est influence tout au long de sa vie par 3 cycles differents:":PRINT 1480 PRINT"PHYSIQUE ------> 23 jours : reflexes , forme , fatigue , sante . 1490 PRINT"EMOTIONNEL ----> 28 jours : sensibilite , susceptibilite , sautes d'humeur . 1500 PRINT"INTELLECTUEL --> 33 jours : acuite intellectuelle , memoire , concentration . 1510 PRINT:PRINT"les 3 cycles demarrent le jour de la naissance . 1520 PRINT"En phase positive , il y a liberation d'energie et exteriorisation . 1530 PRINT"En phase negative , l'organisme fait le 'plein' ." 1540 PRINT"Chaque changement de polarite (lorsque la courbe passe par le point 0) correspond a un jour critique . 1550 PRINT"Les 3 rythmes etant differents , les combinaisons sont nombreuses . 1560 PRINT"Les jours dits 'critiques' ne sont pas forcement nefastes . Cependant l'experience demontre que dans ces periodes l'individu est plus sujet a commettre des erreurs qu 'habituellement . La nature de ces faiblesses 1570 PRINT"depend de la courbe en question . L'importance des consequences , tres variable , peut aller du fait le plus anodin jusqu'au plus grave . Exemple : la difficulte qu'aura un automobiliste a realiser un creneau 1580 PRINT"ou la fraction de seconde d'inattention qui causera l'accident . 1590 PRINT"Des statistiques realisees aux U.S.A et au Japon , dans les compagnies d'assurances , les milieux sportifs et les universites ont permis de verifier l'exactitude de la theorie des Biorythmes . 1600 PRINT"A vous de l'experimenter sur vous-meme et votre entourage grace a ce programme ! 1610 PRINT"PRESSEZ UNE TOUCHE POUR CONTINUER" 1620 CALL&BB06 1630 CLS:PRINT"MODE D'EMPLOI DU PROGRAMME" 1640 PRINT:PRINT"Le calendrier commence le lundi 1-1-1900 et fini le samedi 31-12-2050" 1650 PRINT:PRINT"Les donnees des dates sont a entrer en chiffres . A chaque fois pressez [ENTER] 1660 PRINT:PRINT"Apres avoir entre la date de naissance , l'ordinateur vous indique a quel jour de la semaine correspond votre naissance . 1670 PRINT:PRINT"Ensuite entrez la date a examiner (elle ne peut etre anterieure a la naissance)." 1680 PRINT"L'ordinateur vous indique le nombre de jours separant les 2 dates puis la liste des jours critiques dans le mois concerne ." 1690 PRINT:PRINT"Pour un etude plus fine l'ordinateur visualise les courbes de votre Biorythme ." 1700 PRINT"Celles-ci s'arretent en fonction de la longueur du mois ." 1710 PRINT:PRINT"En bas du graphique une fleche pointe sur le jour considere . 1720 PRINT:PRINT"Les passages des courbes sur la ligne mediane ne sont pas les seuls faits 1730 PRINT"significatifs dans un Biorythme . " 1740 PRINT"Sont egalement revelateurs les courbes en phase , les cretes et les croisements " 1750 PRINT"Ceci dit , bonne utilsation !" 1760 LOCATE 60,25:PRINT"PRESSEZ UNE TOUCHE" 1770 CALL&BB06:GOTO190 |