Bioritmi – Commodore 64 Basic V2

32 Programmi con il Commodore 64 – Gennaio 1985 – Basic V2

Qualche giorno fa ho acquistato l’ennesimo libro della mia ormai soddisfacente libreria dedicata al RetroComputing. Il libro si intitola “32 Programmi con il Commodore 64” della collana Il piacere del computer edita da Franco Muzzio & C. Editore. Il libro e’ stato pubblicato nel Gennaio 1985.
All’interno del libro ho trovato questo simpatico listato sui bioritmi, un argomento decisamente in auge negli anni ’80, ricordo moltissimi programmi per Commodore 64 ed Amiga per la loro visualizzazione, ma che ultimamente ha perso decisamente presa sul grande pubblico.

La teoria dei bioritmi dice che ognuno di noi ha dei cicli che iniziano nel momento della nascita e influenzano il nostro stato fisico, emotivo e intellettuale. Non ci occuperemo di come la teoria dei bioritmi sia stata sviluppata, ma diremo per sommi capi quale influenza dovrebbe avere sulla vostra vita.
Il ciclo fisico dura 23 giorni. Per i primi 11.5 giorni siete nella parte positiva del ciclo: questo significa che avrete buona attività fisica, vigore e resistenza. Durante i secondi 11.5 giorni siete nella parte negativa del ciclo: ciò significa poca resistenza e sensibilità alla fatica.
Il ciclo emotivo è lungo 28 giorni. Durante la metà positiva (i primi 14 giorni) vi sentirete più contenti, ottimisti e portati alla collaborazione.
Durante la metà negativa tenderete a essere di cattivo umore, pessimisti e irritabili.
Il terzo ciclo è quello intellettuale e dura 33 giorni. La prima metà è il periodo in cui avrete grande successo nell’apprendimento di cose nuove. nelle attività intellettuali e creative. Durante la seconda metà farete meglio a rivedere ciò che conoscete già, piuttosto che tentare di imparare qualche nuovo difficile concetto. Il BENE o MALE di questi cicli è caratteristico di ciascun individuo. Per esempio, se siete persone molto controllate, che non si emozionano facilmente, i vostri alti e bassi emotivi non saranno molto marcati. Analogamente, le fluttuazioni del ciclo físico e intellettuale dipendono soprattutto dalle vostre condizioni fisiche e dalla capacità intellettuale. Il giorno in cui uno di questi tre cicli cambia segno da BENE a MALE o viceversa è chiamato “giorno critico”.
La teoria dei bioritmi dice che voi siete più esposti a incidenti nei giorni critici del ciclo fisico e emotivo. I giorni critici del ciclo intellettuale non sono considerati altrettato pericolo-si, ma se coincidono con i giorni critici di un altro ciclo i problemi potenziali possono aumentare. Come potete ben capire, un giorno che sia critico per tutti e tre i cicli è uno di quelli in cui dovete stare molto attenti.
Tenete presente che esiste un’accesa controversia sulla teoria dei bioritmi.
La maggior parte degli scienziati afferma che vi sono ben poche prove per concludere che i bioritmi abbiano qualche significato concreto. Altri pensano che esistano, ma che non siano così semplici e inflessibili come i cicli di 23, 28 e 33 giorni qui citati.

Titolo: Bioritmi
Piattaforma: Commodore 64
Linguaggio: Basic
Versione originale: Tom Rugg e Phil Feldman
Pubblicazione: 32 Programmi con il Commodore 64
Anno: 1985
Trascrizione: Francesco Fiorentini
Anno: 2025
Note: Piccole modifiche estetiche per una migliore visualizzazione dei bioritmi.

Istruzioni
Il computer vi chiederá di fornire la data di nascita (vostra o di chi vorrete calcolare i bioritmi) e la data per la quale visualizzare i bioritmi. Ovviamente non sono accettate date di inizio del bioritmo antecedenti la data di nascita.
Buon divertimento.

Qui di seguito trovate il codice da copiare sul vostro Commodore 64.
Il codice originale é modificato per essere copiato su CBM prg Studio. Gli Screen Codes presenti nel listato originale, sono stati manualmente sostituiti da quelli standard utilizzati da CBM prg Studio.

Attenzione – Ci siamo resi conto che nel listato i caratteri ‘>’ e ‘<‘ potrebbero venir sostituiti dai rispettivi encoding html ‘&gt’ e ‘&lt’. Nel caso, sostituite questi valori direttamente su CBM prg Studio.

Listato: Bioritmi – Commodore 64 – Basic V2


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
100 rem: bioritmi
110 rem: copyright 1983
111 rem: tom rugg, phil feldman, and
112 rem: western systems group
120 clr: print chr$ (147)
125 poke 53280,3:poke 53281,7:print chr$ (28)
130 l=0:t=11:p=3.14159265
140 printtab(13)"** bioritmi **":print
150 print"data di nascita"
160 gosub 500: gosub 600: jb=jd
190 print:print:print"data di inizio del bioritmo"
200 gosub 500: gosub 600: jc=jd
230 if jc>=jb then 270
240 print"il bioritmo non fuo' iniziare"
250 print"prima della data di nascita."
260 print"riprova": print:goto 150
270 for k = 1 to 1000: next
280 gosub 700
300 n = jc-jb
310 v = 23:gosub 800
320 v = 28:gosub 800
330 v = 33:gosub 800
340 gosub 1000
350 print c$; tab(10) ;l$
360 jc=jc+1:l=l+1:if l<12 then 300
370 print: print: print
372 print"   premi 'f' per finire"
374 printtab(9);"'c' per continuare"
376 printtab(9);"'n' per un nuovo bioritmo"
380 get r$:if r$ = "" then 380
385 if r$ = "n" then 120
390 if r$ = "f" then end
395 if r$ = "c" then 370
400 l = 0: goto 280
500 print
505 input"-giorno (1 - 31)"; d
510 d = int(d):if d<1 or d>31 then 505
520 input"-mese (1 - 12)"; m
530 m = int(m):if m<1 or m>12 then 520
540 input"-anno";y
550 y = int(y):if y<0 then 540
560 if y>99 then 580
570 y = y+1900:print "va bene,"; y:print
580 return
600 w = 0:if m<3 then w = -1
610 jd = int(1461*(y+4800+w)/4)
620 b = int (367*(m-2-w*12)/12)
630 if b<0 then b = b+1
640 jd = jd+b
650 b = int(int(3*(y+4900+w)/100)/4)
660 jd = jd+d-32075-b
670 return
700 print chr$(147);
710 print tab(15); "  bioritmi": print
720 print"--data--";tab(12)
730 print"  male";tab(21);"0";tab(25) ;"bene"
740 print tab(10)
750 for k = 1 to t+t+1:print chr$(175) ;
760 next:print: return
800 w = int(n/v):r = n-(w*v)
850 if v<>23 then 900
860 l$ = chr$(32) :for k = 1 to 4
870 l$ = l$ + l$: next
880 l$=left$ (l$, t)+chr$(161)+left$(l$,t)
890 if v = 23 then c$ = "f"
900 if v = 28 then c$ = "e"
910 if v = 33 then c$ = "i"
920 w = r/v:w = w*2*p
930 w = t*sin(w):w = w+t+1.5
940 w = int (w): a$ = mid$ (l$, w, 1)
950 if a$="f" or a$="e" or a$="*" then c$ = "*"
955 if w = 1 then 980
960 l$ = left$(l$,w-1)+c$+right$(l$, t+t+1-w)
970 return
980 l$=c$+right$(l$,t+t):return
990 l$=left$ (l$,t+t)+c$: return
1000 w = jc+68569:r = int(4*w/146097)
1010 w = w-int((146097*r+3)/4)
1020 y = int(4000*(w+1)/1461001)
1030 w = w-int(1461*y/4)+31
1040 m = int(80*w/2447)
1050 d = w-int(2447*m/80)
1060 w = int(m/11):m = m+2-12*w
1070 y = 100*(r-49)+y+w
1080 a$ = str$(d):w=len(a$)-1
1090 c$ = mid$(a$, 2, w)+"/"
1100 a$ = str$(m):w=len(a$)-1
1110 c$ = c$+mid$ (a$,2,w)+"/"
1120 a$ = str$(y):w=len(a$)-1
1130 c$ = c$+mid$(a$, w, 2)
1140 return
Share

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

This site uses Akismet to reduce spam. Learn how your comment data is processed.