Approximation de PI Version 1
voir Approximation de PI Version 2
GW-Basic, utilisé par PC-Basic
Programme avec Texte Seulement
PC-BASIC
Le rapport de la circonférence d'un cercle à son diamètre est donné par la lettre grecque π, prononcée "pi". Sous forme décimale.
π =3.1415926535897932384...
L'expansion décimale de π dure indéfiniment et ne se répète pas ; la constante est donc un nombre irrationnel, ou un nombre qui ne peut pas être écrit comme un quotient de deux entiers. (Plus précisément, π est un nombre transcendantal, ce qui signifie qu'il n'est pas algébrique.)
Avant l'avènement des machines à calculer, les chiffres de π devaient être obtenus à la dure : par des calculs manuels laborieux à la main. Des approximations de π peuvent être trouvées dans l'Ancien Testament de la Bible (les unités étaient des coudées, et l'approximation était d'environ trois) et dans des textes en grec ancien (vingt-deux sur sept).
Finalement, la théorie des séries infinies, développée il y a environ quatre siècles, a facilité le calcul manuel de π. Gottfried Wilhelm Leibniz et Leonhard Euler sont deux mathématiciens notables qui sont arrivés à des approximations en séries infinies de π. Par exemple, une des formules d'Euler a trouvé est π2/6 qui est égal à la somme des inverses des carrés.
Une autre formule d'approximation de ce type, qui équivaut à π/2, est utilisée dans le code ci-dessous. Chaque pression sur la touche ESCAPE imprime une autre itération de l'approximation.
PIER.BAS utilise deux tableaux : P et Q.
Les numérateurs du produit des approximations sont successivement stockés dans P ; de même pour les dénominateurs dans Q. Les lignes 90 et 100 stockent les produits.
5 'Equation for finding
(PI/2)=((2K/2K-1)*(2K/2K+)).........
7 'Max Number of times allowed in this
program: 33
10 KEY OFF:SCREEN 9:COLOR 15,0:CLS
15 PRINT"APPROXIMATION FOR
PI USING ROUGHLY THIRTY ITERATIONS...: PRINT
20 A1=0:A2=0:K=1:DIM P(100):DIM
Q(100)
30 FOR Y=l TO 33 STEP 2
40 P(Y)=(2*K):P(Y+1)=(2*K)
50
Q(Y)=((2*K)-1):Q(Y+1)=((2*K)+1)
60 K=K+1
70 NEXT Y
75
A1=P(1):A2=Q(1)
80 FOR F=2 TO 33
90 A1=A1*P(F)
100 A2=A2*Q(F)
105 PRINT A1" / ";A2; "x 2 = ";(A1/A2)*2
107 PRINT"PRESS <ESC> FOR NEXT
ITERATION..."
108 IF INKEY$<>CHR$(27) THEN 108
110 NEXT F
120
PRINT"THAT'S AS FAR AS WE CAN APPROXIMATE PI"
Regardez la ligne 120 : c'est un rappel imprimé que GW-BASIC ne peut vous emmener que si loin avec un résultat numérique. Bien que vous puissiez créer des programmes supplémentaires qui se rapprochent de π en utilisant d'autres méthodes, vous vous amuserez toujours avec de telles limitations.