ChronoMath, une chronologie des MATHÉMATIQUES
à l'usage des professeurs de mathématiques, des étudiants et des élèves des lycées & collèges

Listing BASIC du calcul des 1000 premières décimales de π

Ce programme, écrit en langage Basic Microsoft, date des années 1990 peu avant la mise en ligne des premières pages de ChronoMath. Il est équivalent à celui écrit en JavaScript.

Le langage Basic et son usage

 

DEFLNG a-z
DIM T(202)
nmax=3340 : b=10000
T(0)=2*nmax : d=2*nmax+1
GOSUB divise


FOR n= nmax TO 2 STEP -1
   T(0)=T(0)+2 : d=2*n-1 : GOSUB divise 
   m=n-1 : GOSUB multiplie
NEXT n
T(0)=T(0)+2

affiche:
CLS
PRINT T(0);" , "
FOR i=1 TO 25
  IF i MOD 10=0 THEN PRINT 
// passer à la ligne dans la fenêtre d'affichage
  T$=MID$(T$,2,LEN(STR$(T(i))))
    WHILE LEN(T$) < 4
      T$="0"+T$
    WEND
  T$=" "+T$
  PRINT T$;
NEXT
WHILE INKEY$="":WEND 
// le programme attend que l'utilisateur tape une touche  
END

divise:
FOR i=0 TO 26
  q=INT(T(i)/d): r=T(i)-d*q : T(i)=q : T(i+1)=T(i+1)+b*r
NEXT i
RETURN

multiplie:
q=0
FOR i=26 TO 1 STEP-1
  p=T(i)*m+q : q=INT(p/b) : T(i)=p-q*b
NEXT
T(0)=T(0)*m+q
RETURN


© Serge Mehl - www.chronomath.com