Quelques techniques usuelles
CHAPITRE 6
98
2 L’accumulation
Nous savons compter un nombre d’événements. Dans le langage courant, le mot compter a
parfois un sens plus général comme dans compter sa monnaie. Dans ce cas, on calcule en fait
la somme de plusieurs nombres (les valeurs indiquées sur les pièces). En programmation,
nous nommerons cette situation accumulation, pour la distinguer du comptage déjà rencontré. Nous verrons que ce terme se justifie par la méthode employée pour obtenir le résultat.
2.1 Accumulation systématique
2.1.1 Un premier exemple
Pour introduire cette technique d’accumulation, nous allons commencer par un exemple
simple : calculer la somme de 100 valeurs entières fournies au clavier. Comme on peut s’en
douter, il ne serait pas judicieux d’utiliser 100 variables différentes (nommées, par exemple,
val1, val2, val3...) puis d’en calculer la somme par une expression usuelle
val1 + val2 + val3... Qui plus est, la démarche ne serait pas généralisable à un nombre
quelconque de valeurs.
Nous allons donc utiliser une technique d’accumulation, à savoir :
• définir une variable somme, destinée à effectuer progressivement la somme de nos valeurs ;
cette variable sera initialisée à zéro ;
• utiliser une répétition définie (ici, 100 tours), dans laquelle, à chaque tour de boucle, nous
lirons une valeur (et une seule) dans une variale nommée, par exemple, val. Cette valeur
sera cumulée à la valeur de somme par l’affectation :
somme = somme + val ;
Voici notre programme complet :
entier val
// pour les différentes valeurs fournies par l’utilisateur
entier i
// pour compter le nombre de valeurs fournies
entier somme
// pour accumuler la somme des valeurs
somme := 0
// initialisation de l’accumulateur des valeurs
répéter pour i := 1 à 100
{ écrire «donnez un entier : »
lire val
somme := somme + val
}
écrire «somme des valeurs fournies : », somme
donnez un entier : 4
donnez un entier : 7
donnez un entier : 11
.....
donnez un entier : 3
somme des valeurs fournies : 487
Calcul de la somme de 100 entiers fournis en données
CHAPITRE 6
98
2 L’accumulation
Nous savons compter un nombre d’événements. Dans le langage courant, le mot compter a
parfois un sens plus général comme dans compter sa monnaie. Dans ce cas, on calcule en fait
la somme de plusieurs nombres (les valeurs indiquées sur les pièces). En programmation,
nous nommerons cette situation accumulation, pour la distinguer du comptage déjà rencontré. Nous verrons que ce terme se justifie par la méthode employée pour obtenir le résultat.
2.1 Accumulation systématique
2.1.1 Un premier exemple
Pour introduire cette technique d’accumulation, nous allons commencer par un exemple
simple : calculer la somme de 100 valeurs entières fournies au clavier. Comme on peut s’en
douter, il ne serait pas judicieux d’utiliser 100 variables différentes (nommées, par exemple,
val1, val2, val3...) puis d’en calculer la somme par une expression usuelle
val1 + val2 + val3... Qui plus est, la démarche ne serait pas généralisable à un nombre
quelconque de valeurs.
Nous allons donc utiliser une technique d’accumulation, à savoir :
• définir une variable somme, destinée à effectuer progressivement la somme de nos valeurs ;
cette variable sera initialisée à zéro ;
• utiliser une répétition définie (ici, 100 tours), dans laquelle, à chaque tour de boucle, nous
lirons une valeur (et une seule) dans une variale nommée, par exemple, val. Cette valeur
sera cumulée à la valeur de somme par l’affectation :
somme = somme + val ;
Voici notre programme complet :
entier val
// pour les différentes valeurs fournies par l’utilisateur
entier i
// pour compter le nombre de valeurs fournies
entier somme
// pour accumuler la somme des valeurs
somme := 0
// initialisation de l’accumulateur des valeurs
répéter pour i := 1 à 100
{ écrire «donnez un entier : »
lire val
somme := somme + val
}
écrire «somme des valeurs fournies : », somme
donnez un entier : 4
donnez un entier : 7
donnez un entier : 11
.....
donnez un entier : 3
somme des valeurs fournies : 487
Calcul de la somme de 100 entiers fournis en données
