Écrire une fonction moyenne
prenant en paramètre un tableau non vide d'entiers et qui renvoie la moyenne des valeurs du tableau.
Dans cet exercice, on n'utilisera pas la fonction prédéfinie
sum
ni aucune autre fonction de quelque module que se soit calculant la moyenne.
Exemples
>>> moyenne([10, 20, 30, 40, 60, 110])
45.0
>>> moyenne([1, 3])
2.0
>>> moyenne([44, 51, 12, 72, 65, 34])
46.333333333333336
def moyenne(valeurs):bksl-nl ...bksl-nlbksl-nlbksl-nlbksl-nlbksl-nlbksl-nlbksl-nl# testsbksl-nlbksl-nldef sontpy-undproches(x, y):bksl-nl return abs(x - y) < 10py-strpy-str-6bksl-nlbksl-nlassert sontpy-undproches(moyenne([10, 20, 30, 40, 60, 110]), 45.0)bksl-nlassert sontpy-undproches(moyenne([1, 3]), 2.0)bksl-nlassert sontpy-undproches(moyenne([44, 51, 12, 72, 65, 34]), 46.333333333333336)bksl-nlbksl-nldef moyenne(valeurs):bksl-nl effectif = len(valeurs)bksl-nl sommepy-undvaleurs = 0bksl-nl for a in valeurs:bksl-nl sommepy-undvaleurs += abksl-nl return sommepy-undvaleurs / effectifbksl-nlbksl-nlbksl-nl# testsbksl-nlbksl-nldef sontpy-undproches(x, y):bksl-nl return abs(x - y) < 10py-strpy-str-6bksl-nlbksl-nlassert sontpy-undproches(moyenne([10, 20, 30, 40, 60, 110]), 45.0)bksl-nlassert sontpy-undproches(moyenne([1, 3]), 2.0)bksl-nlassert sontpy-undproches(moyenne([44, 51, 12, 72, 65, 34]), 46.333333333333336)bksl-nlbksl-nl
A
On utilise une fonction sont_proches
pour tester la presque égalité entre flottants.
On ne devrait jamais faire de test d'égalité entre flottant !
Z