R EVUE DE STATISTIQUE APPLIQUÉE
G. D’H ERBEMONT J. L. G ROBOILLOT
Du dialogue entre statisticiens et calculatrices électroniques
Revue de statistique appliquée, tome 11, n
o4 (1963), p. 35-48
<
http://www.numdam.org/item?id=RSA_1963__11_4_35_0>
© Société française de statistique, 1963, tous droits réservés.
L’accès aux archives de la revue « Revue de statistique appliquée » (
http://www.sfds.asso.fr/publicat/rsa.htm
) implique l’accord avec les conditions générales d’uti- lisation (
http://www.numdam.org/conditions). Toute utilisation commerciale ou im- pression systématique est constitutive d’une infraction pénale. Toute copie ou im- pression de ce fichier doit contenir la présente mention de copyright.
Article numérisé dans le cadre du programme Numérisation de documents anciens mathématiques
http://www.numdam.org/
35
DU DIALOGUE ENTRE STATISTICIENS ET CALCULATRICES ÉLECTRONIQUES
G. D’HERBEMONT
Conseiller
enStatistique,
Ciedes Machines
BULLJ. L. GROBOILLOT
Statisticien à
la
Ciedes Machines
BULLOn
parle, depuis quelque temps déjà,
de la secondegénération
descalculateurs
électroniques,
la troisièmegénération
est enpréparation
etle marché des calculateurs continue à s’étendre.
Parallèlement à ce
développement,
lastatistique
a trouvédepuis
la dernière guerre de nombreux utilisateurs. Cette
jeune technique
faitappel
à des notions modernes demathématiques ;
elle est mise en ap-plication
par des hommes nécessairement ouverts etréceptifs.
Cependant,
contrairement à cequ’on pourrait
penser, le statisticien n’utilise pas toute l’aide quepeuvent
luiapporter
les machines électro-niques.
Si l’on essaye de rechercher les motifs deréticences,
ons’aper- çoit
que le statisticien aimevoir,
toucher seschiffres,
et, suivre son calcul. Or lefaçonnier -
c’est-à-dire le centre decalcul -, préfère
nepas faire sortir de la machine
trop
de résultats intermédiaires. Le sta- tisticienéprouve
la nécessité decontrôler,
desuivre,
de vivre son cal-cul ;
lefaçonnier
ne souhaite pas alourdir son programme par des ex- tractionsqu’il
considère inutiles.Par
ailleurs,
le statisticien hésiteparfois
devant letemps
de ré- ponse à concéder au centre de calcul.Qu’ils
fassent l’un et l’autre par- tie ou non de la mêmeentreprise,
il y atoujours
la filière :prise
de contacts,devis, préparation
desdonnées, perforation
desdonnées, prise
en
charge
par le serviced’exploitation,
contrôle desrésultats,
remise des résultats. S’il est nécessaire d’écrire un programmespécialement
pour le
problème
dustatisticien,
alors c’est ensemaines,
certains dironten
mois,
que letemps
deréponse risque,
leplus
souvent, d’êtrecompté.
La machine n’est pas mise en cause directement car son
temps
effectif de travail sera dequelques
minutes ou même dequelques secondes,
mais c’est lelangage
peu usuelqu’il
faut lui tenirqui
fait renoncer àbien des
projets
séduisants.Ainsi,
constatation est faite des difficultés dudialogue
entrefaçon-
nier et
statisticien,
et del’impatience
de ce dernierqui
désirerait des résultats de calcul dans le mêmetemps qu’une photo-copie.
Il est bien évident que toutes les
exigences
ainsiexprimées
ne peu- vent être satisfaitespleinement.
Mais si le statisticien et le centre de calculprenaient davantage
l’habitude de travailler en liaison l’un avecl’autre,
il est tout aussi clair que bien des difficultéss’aplaniraient.
Le centre de calcul
pourrait envisager
de consacrer moins detemps
à économiser des microsecondes. Il
comprendrait
mieuxpourquoi
unstatisticien éclairé
n’apprécie
que très rarement un programme admira-Revue de Statistique Appliquée. 1963 - Vol. XI - N’ 4
36
blement
performant qui n’imprime, paradoxalement,
que le OUI ou le NON de laréponse
à un test. Ils’adapterait plus
volontiers à la manière bienparticulière qu’a
le statisticienperspicace,
d’observer le déroule- ment de son calcul et decritiquer
lafaçon
dont ses données se trans-forment et se
plient
àl’analyse qu’il
en fait. Du fait des demandesplus
nombreuses
qui
lui seraientprésentées,
le centrepourrait
accroîtreencore la
part
consacrée à l’utilisation extensive des machines parrapport
à cellequi
revient à l’utilisation intensive.Mais de son
côté,
le statisticien ferait mieux aussi lapart
des choses. Ilcomprendrait pourquoi
l’ensembleélectronique
neremplace
pas larègle
à calcul et dansquelle
mesure il lacomplète.
Il sauraitquel petit problème
est mieux résolu avec une machine debureau, quel petit problème,
devenurépétitif
soit à cause du nombre de données soit àcause de sa
fréquence
tombe dans le domaine de la calculatrice. Il saurait enfinquelle langue
il convient deparler
au centre de calcul pour être aussitôtcompris
et servi auplus
vite.Que
s’établissent deslangages,
c’est bien de celaqu’il s’agit
etc’est cela que nous nous efforcerons de
présenter
dans les pagesqui
suivent.I - LA MACHINE ET SES LANGAGES
Il existe
plusieurs
moyens de donner des ordres à une calculatriceélectronique.
Une machine a unlangage
de base constitué par des codesauxquels correspondent
desopérations
élémentaires. Elle exécute l’ins- truction dont le code a été transféré dans sonregistre
de commande. Lecode est la clef
qui
introduite dans la serrure(registre),
ouvre uneporte
et une seule celle de l’instruction élémentaire
correspondante
au code.Une suite de codes élémentaires constitue un programme.
Il
existe,
enplus,
pour la mêmemachine,
deslangages plus
évoluésqui comportent
des codes non élémentaires. Ces codes ne seront pas transférés dans leregistre
de commande de la machine mais traitéscomme des données et
analysées
comme telles par un programme ditcompilateur.
Une suite de codes nonélémentaires,
ou programme sym-bolique,
donnera naissanceaprès traitement,
par lecompilateur
à unesuite de codes
élémentaires,
ou programmeobjet.
Le programmeobjet
est la traduction en
langage
de base du programmesymbolique,
et, enconséquence,
ilpermettra d’exécuter,
sur lamachine,
le programmesymbolique (par simple
passage du programmeobjet).
Une machine
possède
doncplusieurs langages.
Il faut remarquergé-
néralement que
plus
unlangage
estéloigné
dulangage
debase, plus
letravail du
compilateur
estcomplexe
et moins le programmeobjet
estperformant. Cependant,
les utilisateurs de machine ont intérêt àdisposer
de
langages s’adaptant
à leurpensée
et d’un usageagréable.
Ils ont mêmeintérêt à
posséder
unlangage
universelqui
leurpermettra
deséchanges
de méthodes et de programmes. C’est
pourquoi
ils ont crée lelangage Algol.
Dans ce
qui
suit nousdistinguerons
deuxcatégories
delangages :
1/
lelangage
de base et deslangages
voisins souvent nommésautocodes ;
2/
deslangages
évolués tels queAlgol-Fortran-PAF.
Revue de Statistique Appliquée. 1963 - Vol. XI - N 4
37
Nous ne nous intéresserons pas aux
langages Cobol,
réservé auxcomptables,
ni auxlangages
deliste, Lisp, IPL, Comit,
dont lespossi-
bilités et les
champs d’application
neparaissent
pascorrespondre
auxproblèmes statistiques.
II - L’EXECUTION D’UN CALCUL
STATISTIQUE
Lorsque
le statisticien a un calcul à effectuer il doit commencerpar déterminer si son
problème
n’a pasdéjà
étél’objet
d’un traitementsur une machine déterminée au
profit
d’autres utilisateurs. Si c’est le cas, ilpeut
bénéficier de l’effort de sesdevanciers,
sinon il devra pro- grammer ou faire programmer ses calculs.Le
problème
adéjà été programmé
Le calcul n’est alors
qu’une simple
et banaleexploitation.
En consé-quence, il ne doit pas s’écouler
plus
de huitjours
environ entre laprise
en
charge
de la commande et la remise des résultats.Pour déterminer si son
problème
adéjà
étépassé
sur unemachine ,
le statisticien devra chercher dans troiscatégories
de programmes.a)
Les programmesgénéraux,
c’est-à-dire les programmes livrés avec lamachine ;
ils ont un caractèrerépétitif
et sontgénérale-
ment
programmés
enlangage
de base ou en auto-code. Enstatistique,
ils
permettent
d’obtenir : moyenne,variance, écart-type,
coefficient decorrélation, régression
linéaire et non-linéaire.b)
Des programmesqui
ont étéécrits,
par des utilisateurs de lamachine,
en auto-code ou enlangage
de base.c)
Des programmes écrits enlangages Algol Fortran,
ou d’autreslangages symboliques (PAF... )
La documentation relative aux programmes existants sur une ma- chine est fournie par le constructeur.
Cependant signalons
que :Certaines revues contiennent de courtes notes d’une dizaines de
lignes,
donnant lescaractéristiques
des programmes dernièrement sortis sur les diverses machines américaines. C’est le cas, parexemple,
de la revue
"Technometrics", publiée
par"The
americansociety
forquality
control and the american statisticalassociation" ;
Le laboratoire de
statistique
du Case Institute oftechnology
edite
périodiquement
unrapport : "Abstract
of statisticalComputer routines" ;
La revue
"Communication
of the A. C.M" (Assocation
for com-puting machinery) publie
danschaque
numéro sous la direction deWegstein
un article
"Algorithms"
contenant essentiellement desprocédures
écritesen
Algol ;
on y trouvequelques
programmesstatistiques.
Comme nousle verrons ces programmes écrits en
Algol
sont directement utilisables.Le
problème
n’ajamais
étéprogrammé
Pour
qu’un
calcul soit effectué par unemachine,
il faut commen-cer par le définir
parfaitement
et dans les moindres détails. Il fautpré-
ciser ce que seront les
données,
lesrésultats,
les diversesphases
ducalcul ;
il fautprévoir
tous les casparticuliers qui peuvent
seprésen-
ter. Tout ceci sera
consigné
dansl’organigramme
duproblème (voir
exemple § IV).
Revue de Statistique Appliquée. 1963 - Vol. XI - N’ 4
38
Alors se pose la
question
du choix dulangage
à utiliser pour don-ner les divers ordres à la machine. Deux cas se
présentent :
a)
Leproblème
est volumineux(calculs longs, beaucoup
dedonnées, beaucoup
de résultats intermédiaires à conserver,beaucoup d’extractions).
Alors il estquelquefois
nécessaire de l’écrire enlangage
de base ou en autocode. Le statisticien ne
peut
alors programmer lui- même sonproblème ;
il leprésentera
sous forme del’organigramme.
b)
Leproblème
est peuvolumineux,
ne doit pas être résolu souvent, alors leslangages Algol,
Fortrans’imposent.
Laplupart
desproblèmes statistiques qui
ne sont pas des monstres sont de cette nature(exception
faite desdépouillements d’enquête
et dequelques
autres pro-blèmes).
Dans ce cas, le statisticienpeut
programmer lui-même enAlgol
ou en
Fortran,
etobtenir,
trèsrapidement
desrésultats,
s’il n’a pas commistrop
d’erreur.Il est bien clair que la limite entre ces deux
catégories
deproblèmes (a
etb) dépend
d’unepart
de la machine dont ondispose,
d’autrepart
deses
compilateurs (Progràmmes
traduisant leslangages Algol,
Fortran...en
langage
propre à lamachine).
Il existe diverses variantes de com-pilateurs
selon que :Le nombre d’instructions du programme
symbolique (Algol, Fortran)
est ou nonlimité ;
La
segmentation
du programme estautomatique
ou non ; Lagestion
des données et des résultats intermédiaires(range-
ment sur rubans
magnétiques)
estorganisée
d’une manière ou d’une autre ; L’insertion deprocédures
enlangage
machine dans le pro- grammesymbolique
estprévue
ouimpossible ;
Le
compilateur
est lent etpeut
fournir un programmeobjet
en
langage
machineperformant,
lecompilateur
estrapide
et restitue un programmeobjet
peuperformant.
Les
possibilités
deslangages
seront donc surtout fonctions des com-pilateurs permettant
de les utiliser. Lescompilateurs
sontplus
ou moinsévolués d’une machine à l’autre et dans une certaine mesure on
pourrait
aller
jusqu’à
dire que lelangage
est peu, alors que lecompilateur
est tout.Plus
généralement,
c’est l’ensemble -langage - compilateur -
machine -qui permettra
de dire si unproblème
est a écrire dans lelangage
consi-déré ou en
langage
de base.Trois directions s’offrent donc au statisticien : soit l’utilisation des programmes existants
(§111).
soit laprésentation
d’unorganigramme
envue de la
programmation
enlangage
debase, qu’il
devra confier à unspécialiste (§IV), soit,
enfin l’utilisation d’unlangage
évolué(§V).
III - LES
BIBLIOTHEQUES
DE PROGRAMMESIl n’est pas
possible
de donner ici une liste exhaustive des pro- grammesstatistiques
existant sur les diverses machines fonctionnant enFrance.
Cependant,
onpeut préciser
la richesse normale d’une biblio-thèque, qui
sera biengarnie
si la machine a de nombreux utilisateurs statisticiens.Revue de Statistique Appliquée. 1963 - Vol. XI - N’ 4
39 Statistique
à une variableCalcul des moments et coefficients de
Pearson ;
Test du
X2 d’adéquation
d’une variable aléatoire pour diverses lois deprobabilités (Laplace
gauss,Poisson, Binomiale, Hyper-géométrique, Hyper-exponentielle, Pascal, Gallhier) ;
Test de
Kolmogorof (pour
les mêmeslois) ;
Test de Smirnof
(pour
les mêmeslois) ;
Droite de
Henry
Courbe de concentration.
Statistique
à deux variablesCalcul des coefficients de
corrélation ;
Calcul des coefficients de
régression linéaire ;
Test sur la
signification
des coefficients decorrélation ;
Tableau decontingence
avec testsdivers ;
Comparaison
de moyennes et de variances(test F, Sukhatrue, Welch...).
Statistique
àplusieurs
variablesRégression linéaire ;
Régression
linéaire sélective(sur
les variablesoriginales
ou surles variables
transformées,
parexemple Log x) ;
Calcul des coefficients de corrélation
partielle ; Analyse
de la variance(plans factoriels) ;
Test sur la moyenne vectorielle
(Tester
que le vecteur moyen estégal
à un vecteurdonné,
testerl’égalité
des vecteurs moyens de deuxéchantillons,
testerl’égalité
descomposantes
du vecteurmoyen) ;
Test sur la matrice de covariance
(tester l’indépendance
de groupes devariables,
testerqu’une
matrice de covariance estégale
à unematrice
donnée) ;
Problème de classification
(classer
un vecteur échantillon dans la famille N(Ml, E )
ou N(M2, E )) ;
Test sur le vecteur moyen et la matrice de covariance
(tester
si-multanément que le vecteur moyen est
égal
à un vecteur donné etque la matrice de covariance est
égale
à une matricedonnée).
Séries
chronologiques
,Dé saisonalisation des
séries ;
Prévision parajustement ;
Calcul de la fonction
d’auto-corrélation ;
Divers modèlesclassiques
deprévision.
Revue de Statistique Appliquée. 1963 - Vol. XI - N’ 4
40 Dépouillement d’enquête
Il est fortement conseillé de ne pas lancer
d’enquête
sans s’êtrepréoccupé,
aupréalable
du programme dedépouillement qui
l’ex-ploitera.
Analyse
factorielle Méthodecentroide ;
Méthode varimax.Processus
séquentiels
Détermination des fonctions OC et ASN
(efficacité
et effectif moyen del’échantillon)
pour diverses décisionsséquentielles.
IV - L’ORGANIGRAMME D’UN PROBLEME
Nous avons vu
qu’il
était souhaitablelorsqu’on
désire que le pro- gramme soit établi par unspécialiste
enlangage
machine ou enautocode ,
de
présenter
au centre de calcul unorganigramme.
Nous allons montrer de
quoi
ils’agit
sur unexemple
trèssimple.
Supposons
que l’on veuille faire calculer la fonction derépartition
de la loi de Gauss réduite :
pour les valeurs de x échelonnées de
0, 5
en0, 5,
àpartir
de x =0, 5 jusqu’à
x =4, 5.
Voici
(fig. 1)
comment seprésente l’organigramme
d’ensemble dece calcul. Comme tout
organigramme
il commencepar Début (case 1)
et se termine par fin
(case 7).
La case 2
indique qu’il
faut introduire la valeur1/2 (valeur
initialede
x)
dans une certaine mémoire réservée pour les valeurs successives de x et àlaquelle
on a attribué arbitrairement un nom :k.
Ce nom per- mettra de faireappel,
dans d’autresparties
del’organigramme,
au contenuk ou de modifier ce contenu.
La case 3
indique qu’il
faut calculer F pour la valeur contenue dans lamémoire k, puis
ranger le résultat dans une seconde mémoiref.
La case 4
indique qu’on imprime
aussitôt x etf,
cequi permet
d’utiliserensuite,
ànouveau, k et f pour
contenir les valeurs suivantes . La case 5 donne l’ordre de mettre dans la mémoire k son ancien contenuaugmentée
de0, 5 (valeur
de xsuivante).
La case 6 contrôle si la
progression
de x estterminée,
en compa- rant le contenu de k à4, 5 (dernière
valeur de x àconsidérer) ;
sik ~ 4,5
elleaiguille
vers la continuation du calcul et dans le cas contrairevers la fin.
On remarquera que
l’organigramme
d’ensemble ainsi établi suffit si le centre de calculdispose déjà
d’un programme pour le calcul de F(x) .
Dans le cas contraire il faut
préciser
maintenant lesopérations
résuméespar la case 3.
Revue de Statistique Appliquée. 1963 - Vol. XI - N 4
41
Fig. 1 -
Organigramme
d’ensemble.Or,
on sait(ou plutôt
tout statisticienpourrait savoir) qu’une
ap-proximation( 1 )
de F(x)
est donnée par :et :
c’est-à-dire par les
premiers
termes d’undéveloppement
en fractioncontinue,
limité.On voit immédiatement
apparaître
deux suites : suite A : -1 ; 2 ; -3 ; 4. ; -5 ; 6 ;suite B :
1 ; 3 ; 5 ; 7 ; 9 ; 11 ;.13 ;
’qui correspondent
à deuxprogressions
trèssimples.
---
(1) En fait il serait
préférable
d’utiliser une "meilleureapproximation" polyno-
miale. La méthode des fractions continues estprésentée
dans la réf. [6].Revue de Statistique Appliquée. 1963 - Vol. XI - N 4
42
Fig. 2 -
Organigramme
du calcul de F (x).En utilisant ce
fait,
onpeut
dresser le nouvelorganigramme (fig. 2) correspondant
au calcul de F(x),
pour x donné. Les seulesopérations
utilisées ici sont la
multiplication
et l’additionalgébrique
ainsi que la fonctionexponentielle,
notées defaçon
habituelle.Nous ne décrirons pas en détail cet
organigramme
que le lecteurpourrait
certainement établirlui-même, compte
tenu des notations choi- sies ici :d :
signe
du terme courant dela suite
Ar : terme courant de la suite B 8 1 er terme de la suite A
t2: résultat du calcul du carré de x
u : second terme des dénominateurs successifs
k :
progression
des termes de la suite A ausigne près
y résultat du calcul de R
(x) f
résultat du calcul de F(x)
Revue de Statistique Appliquée. 1963 - Vol. XI - N 4
43
Pour grouper maintenant les deux
organigrammes
il faut sepréoc-
cuper d’éviter les confusions de notations.
Ainsi,
lesymbole k
devraêtre modifié. Il n’aurait pas été difficile ici de choisir d’emblée une autre
lettre,
mais ce genre de difficulté seprésente automatiquement lorsque
l’on désire grouper desorganigrammes déjà
établis par des voiesdifférentes,
extraits d’un autreproblème
parexemple.
Sur la
figure 2,
on remarquera le rôle de la mémoire t2 : elle évite d’avoir à calculer 6fois,
au lieud’une,
le carré de x. Pour lasimplicité
del’exposé,
cepoint
mis àpart,
nous n’avons pas autrement cherché à réduire le nombred’opérations
ni à minimiser le nombre de mémoires. Mais il faut évidemment avoir en vue cespréoccupations qui
seront éminemment celle du centre de calcul.
Bien que l’établissement d’un
organigramme
ne soit pastoujours
aussi
simple
que dans le casprésenté,
le travail de réflexion nécessaire pour le tracer, ens’appuyant
sur lesquelques
indications que nous venonsde
donner,
est, on en conviendracertainement,
à laportée
de tout sta- tisticien. Enpossession
de cedocument,
le centre de calculpeut
alors confier laprogrammation
à sonpersonnel spécialisé.
Mais nous allons voir
maintenant,
sur le mêmeexemple, qu’il
n’estguère plus
difficile de décrire lesopérations
en unlangage
directement utilisable par uncompilateur.
V - UTILISATION DES LANGAGES EN
STATISTIQUE -
L’ALGOLOn
peut
direqu’il
existe à l’heure actuelle deuxlangages
mathé-matiques, Algol
etFortran, qui permettent
très facilementd’exprimer
rationnellement les calculs
statistiques qu’on
se propose d’effectuer.Ainsi,
un statisticienqui
désire résoudre unproblème
ne mettrapas
plus
detemps
à écrire enAlgol
le calcul à exécuterqu’à expliquer
à un calculateur humain ce
qu’il
doit faire à la machine de bureau.C’est ce que nous allons chercher maintenant à mettre en
évidence,
en
espérant
que le lecteur seratenté,
par notre propos, de se référer à l’un des coursd’Algol
cité en fin de cetarticle(1) :
il constatera alors par lui-mêmequ’il
ne faut pasplus
d’une dizaine d’heures pourapprendre
ce
langage.
Dans le cas de
l’exemple
donné au cours duparagraphe précédent,
le texte écrit en
Algol,
à donner au centre decalcul, pourrait
être celui de lafigure
3. Toutefois les nombres écrits en marge ne serventqu’à repérer
leslignes
et ne font paspartie
du programme.En
fait,
leslignes 1,
2 et 22 à 30correspondent
au processus décrit dansl’organigramme général (fig. 1),
tandis que leslignes
3 à 21 cor-respondent
au processus de lafigure
2. Onpeut
estimer d’ailleurs que, l’habitudeaidant,
le tracépréalable
del’organigramme
n’est pas néces- saire et l’écriture enAlgol
est alors obtenue directement.Avant de commenter le programme
proposé,
nousprésenterons quelques
remarques sur lessymboles
del’Algol.
Ceux-ci sont stricte-ment définis.
Ainsi,
pour l’addition et pour lamultiplication
on utiliseles
signes
usuels(+
etx) ;
pour la division on utilise lesigne : / ;
pour l’élévation à unepuissance (x2
parexemple)
on utilise une flèche verti----
(1) réf. [7] à [11]
Revue de Statistique Appliquée. 1963 - Vol. XI - N’ 4
44
cale :
xt. 2.
La fonctionexponentielle
est notée ici par EXP(x) pour ex et la racine carrée de x par RAC2(x). On notera que lavirgule,
lepoint
et
virgule,
lesparenthèses
sont nécessaires aux endroitsindiqués. Quant
au
signe :
=, ilsignifie
que laquantité désignée
à sa droite doit être in- troduite dans la mémoire nommée à sagauche ( k:
=3xssignifie
donc que letriple
du contenu de la mémoire s doit être introduit dans la mé- moirek).
A -
Organisation générale
du programmeComme tout programme
Algol,
celui-ci commence pardébut(ligne 1)
et se termine par fin ;
(ligne 30).
Le
premier
début est suivi des déclarationsd’identificateurs ;
ici iln’y
aqu’une
telle déclaration :2 Réel k,
f ;
qui indique
à la machine la réservation de mémoires à effectuer pour les deux variables réelles k etf.
Ensuite,
viennent les déclarations deprocédures
utilisées dans le programme. Cesprocédures
sont desparties
de programmeauxquelles
on
peut
se renvoyer.Ici,
iln’y
aqu’une procédure,
cellequi
serapporte
à la méthode de calcul de
f
= F(x)
pour une valeur xquelconque :
La déclaration de
procédure comporte : a)
L’identification de laprocédure
(On
a choisi ici le motProbabtlité)
suivi desparamètres
de laprocédure (soit
ici (x,f)).
Cesparamètres
sont des identificateurs non lo- caux, c’est-à-direqu’ils
sont àpréciser,
comme nous le verronsplus loin,
lors del’appel
de laprocédure
dans le programme.b) Le corps
deprocédure
où on constate
que k,
notamment, est déclaré comme identificateurlocal, entier ;
il est donc sansrapport
avec le k de laligne
2. Le contenudétaillé du corps de la
procédure
sera commenté en B.Les déclarations
précédentes
sont suivies du programme à propre- mentparler :
Revue de Statistique Appliquée. 1963 - Vol. XI - N 4
45
Celui-ci se compose d’une instruction pou r
portant
surquatre
ins- tructions(lignes
25 à28) précédées
de début et suivies de fin ;(cet
en-cadrement par
début,
fin ;précise
laportée
de l’instructionpour).
L’instruction pou r dit d’exécuter
plusieurs
fois lesquatre
instructions"pour"
des valeurs de k successivesqui progressent
àpartir
de1/2 jus- qu’à 4,5,
par saut(pas)
de1/2.
Ceci est donc unefaçon
conventionnelle de dire comment on désire faire progresser le contenu de lamémoire k .
Considérons maintenant l’instruction de laligne
25. Celle-ci faitappel
à laprocédure probabilité
définieparmi
les déclarations et tout sepasse
pratiquement
comme si onremplaçait
dans le programme, laligne
25 par le corps de la
prccédure correspondante
danslaquelle
on auraitpréalablement remplacé k par kl
et x par k.Quant
aux trois instructions26, 27, 28,
ellespermettent
d’extraire les résultats de calcul soit :2 6 éditer
("F19.9", f) ;
Edition
(préparation
del’impression),
sur dix neuf caractères avec neuf chiffresaprès
lavirgule,
du contenu de la mémoiref (qui
contient alors la valeur de F(k ) ).
27 Editer
("19.9", ?; ;
Edition del’indice k ;
28
Imprtmer (1) ;
Saut de
papier
d’uneligne
etimpression
de laligne
éditée. Cesprocé-
dures d’édition ne sont pas normalisées et ne font pas
partie
dulangage Algol.
Celangage,
eneffet,
ne définit pas les entrées sorties.B - Le corps de
procédure
Le corps de
procédure
est ici constitué en"Bloc" :
il commencepar début
(ligne 4),
suivi des déclarations d’identificateurs locaux à la pro- cédure :51
Entier r, s, k ;6 Réel d, t2, u, y ; et il est terminé par
fin ;
On
peut
commenter ainsi les instructions de ce corps deprocédure :
On a remisé dans u la valeur
6x2 13,
dernier terme dudéveloppement tronqué
en fraction continueH.e prochain
terme à calculer est donc-5x2 11+u). -5x2
k
régresse
àpartir
de 5jusqu’à
la Pour k: =s-1 Pas-1 Jusqu’à 1 valeur 1 par pas de -1. FaireOn voit
que k
vagénérer
la suite A en valeur absolue.Revue de Statistique Appliquée. 1963 - Vol. XI - N 4
46
L’instruction pourporte
sur les trois instructions suivantes.L’alternance du
signe
de la suite Asera obtenu par d.
La suite B sera
générée
par rqui
ré- gresse àpartir
de 13 par pas de -2jusqu’à
3.Cette instruction
permet
de calculer pour k=5pour k=4
jusque
k=lIl reste pour le calcul de
R(x)
à effec-tuer
La valeur de
est remisée
dans f
Si la machine dont on
dispose, possède
une entrée par cartes per-forées,
le programme(fig. 3)
devra être mis sur cartes. Achaque
sym- bolecorrespond
un code deperforation
variant souvent d’une machine à l’autre. Engénéral
onperfore
unsymbole
par colonne et une carte parligne
de programme.C -
Remarques générales
sur laprogrammation
enAlgol
Le
temps
d’écriture du programme enlangage
machine est au moins dix foissupérieur
autemps
d’écriture enAlgol. Lorsque
le programme estécrit,
il contient souvent des erreurs, il faut donc faire des essais de mise aupoint
du programme sur la machine. Le nombre d’essais de mise aupoint
d’un programme écrit enlangage
machine est au moinsdix fois
supérieur
à celui du programme écrit enAlgol.
En
Algol,
la détection des erreurs est alors neuf cas sur dix im-médiate,
la machinespécifie
elle-même la nature de l’erreur faite dans l’instruction dont elleindique
le numéro. Plusieurs erreurspeuvent
êtredétectées par un même essai.
Il est recommandé de
découper
l’ensemble du calcul en de nombreu- sesprocédures élémentaires, qui pourront
être mises aupoint indépen-
demment les unes des autres et simultanément.
L’assemblage
de l’en- semble desprocédures
élémentaires ne seraplus
alorsqu’une
formalité.Des revues
publient
d’ailleursrégulièrement
desprocédures Algol permettant
de résoudre certainsproblèmes.
Il suffit de lesrecopier
enrespectant
les contraintes d’écriture de la machine dont ondispose (par
Revuc de Statistique Appliquée. 1963 - Vol. XI - N’ 4
47
exemple
sur le r60,
lepoint virgule (;)
est codifié0 )
avant de les don-ner à la
perforation.
Cesprocédures
sont alors directement utilisables.VI - L’AVENIR ET LE PRESENT
Les
langages
naissent et sedéveloppent (Algol, Cobol, LISP , COMIT, IPL... ).
Ce sont deslangages généraux pouvant
être utiles à lastatistique.
Dans les années à venir,cependant,
à l’intérieur même de latechnique statistique,
doivent voir lejour
de nombreuxlangages
tels que :Langage
desimulation ;
Langage
de traitement desplans d’expériences ; Langage
de traitement desenquêtes
et recensement.Il serait souhaitable que dans ces domaines comme cela s’est pro- duit pour
l’Algol,
la nécessité se fasse sentir de coordonner et de nor-maliser les actions.
On
peut
estimer aussiqu’une
utilisationplus fréquente
des machi- nes, aura desrépercussions profondes
sur les méthodes de travail.Ainsi, pourquoi
s’encombrer de volumes de tablesplus
ou moinscomplètes
alorsqu’il
estbeaucoup plus simple
de conna3tre lesprocédures d’approxima-
tion des fonctions rencontrées en
statistique.
Unegrande partie
dutemps
consacrée à décrire comment utiliser les tables et à
disposer
les cal-culs d’un
X2
ou d’un coefficient decorrélation,
ne serait-elle pas avan-tageusement
concédée àl’exposé
des méthodesd’approximation
et des méthodes deprogrammation ?
Peut-être verrait-on
alors,
un peuplus
souvent,pris
encompte
lerisque
de deuxièmeespèce
dans les raisonnementsstatistiques
et neserait-on
plus
aussi hésitantlorsqu’interviennent
lesprobabilités
atta-chées aux variables
X2,
t, ou F décentrées.Mais,
dès àprésent,
un certain nombre deproblèmes
seposent, parmi lesquels
onpeut
noter les suivants :Faire connaître les divers programmes
statistiques
existantssur les différentes machines fonctionnant en
France ;
Elaborer deslangages statistiques ;
Promouvoir
l’usage
de méthodes n uvelles ou de méthodesanciennes peu utilisées de calculs
statistiques ;
Coordonner et stimuler la
publication
en France des calculsstatistiques
écrits enAlgol.
Poser les
problèmes statistiques
rencontrés lors de l’utilisa- tion des calculateursdigitaux
dans le domaine de l’automatisme industriel(relevé
d’information parsondage,
décisionsséquentielles... ).
Tout ceci laisse penser
qu’il
restebeaucoup
à faire dans la miseau
point
et lavulgarisation
de méthodes de calculstatistiques.
Revue de Statistique Appliquée. 1963 - Vol. XI - N 4
48 BIBLIOGRAPHIE
[1]
F. YATES -(1962) "Computers
in Research -promise
andperfor- mance".
TheComputer journal.
Vol.4,
page 273.[2]
F. YATES et M. R. SIMPSON -(1960) "A general
program for theanalysis
ofsurveys".
TheComputer journal.
Vol.3,
p. 136.[3]
F.YATES,
J. C. GOWER et M. R. SIMPSON -"A specialized
auto-code for the
analysis
ofreplicated experiments".
TheComputer journal.
Vol.5,
p. 313.[4]
F. C. LEONE -"Statistical
programs forhigh speed Computers"
dans la
plupart
des numéros de Technometrics.[5]
K.D. TOCHER et D.G. OWER -"The
automaticprogramming
ofsimulations", compte
rendu ducongrès
internationnal de rechercheopérationnelle
1960.[6]
M. G. KENDALL -"The
Advancedtheory
ofstatistics" (cf. Griffin).
[7]
M. BOTTEN BUCH -"Structure
and use ofAlgol 60", journal
ofthe A. C. M. Vol.
9,
n°2,
avril 1967.[8]
M. CRACHEN -"A guide
toAlgol programming".
J.Wiley and
sons,N. V. 1962.
[9]
M. R. SCHWARZ -"An
introduction toAlgol 60".
Communication of the A. C.M. ,
n°5(fev. 62),
page 89 à 95.[10]
E.W. DIGKSTRA -"Primer
ofAlgol
60programming".
AcademicPress 1962.
[11]
N. GASTINEL et L. BOLLIET -"Cours d’Algol
de l’université deGrenoble". (à paraître
chezHermann).
Revue de Statistique Appliquée. 1963 - Vol. XI - N’ 4