Bonsoir !
Voilà, j'ai un exo d'algo (enfin, c'est un bien grand mot, vu qu'il n'y a rien d'urgent, je prends 2 semaines d'avance là )

C'est un exercice de calcul de différentes statistiques dans le cadre des sous-programmes : on vient de voir les fonctions et les procédures et donc on les met en pratique dans ce genre d'exos.

En fait mon problème est simple, je dois coder une fonction qui calcule la variance et une autre qui calcule l'écart-type.

Je vous parle d'écart-type alors que ce n'est pas dans le nom du topic, mais ce n'est pas pour vous donner du boulot en plus ^^, c'est parce qu'on peut exprimer la variance en fonction de l'écart-type.

J'ai trouvé la formule suivante sur internet : écart-type = sqrt(Variance) donc Variance = (écart-type) au carré.

Mais en fait je ne suis pas plus avancé, je ne peux pas calculer l'écart-type avant donc la variance non plus finalement

Alors, j'ai trouvé une formule pour la variance qui a l'air d'être la bonne :
Variance = E(x2) + E(x)2.

Malheur ! En fait, je dois calculer d'abord l'espérance mathématique E pour calculer la variance qui me permettra de calculer l'écart-type ? C'est un cauchemar

Alors du coup j'ai dû trouver la formule pour l'espérance mathématique :
E(x) = (somme de i à n) de x(indice i)*p(indice i).

Je me dis, simple, j'utilise un for pour boucler le calcul de l'espérance, sauf que rage, p c'est la probabilité donc je dois calculer le taux d'apparition de chaque valeur de mon tableau pour trouver p !

Raaah ! J'ai l'impression qu'il faut chercher moins compliqué mais je ne vois pas comment faire autrement :/

Du coup, j'ai l'impression que l'algorithme de ma procédure va faire 30 lignes
Je vois bien qu'il n'y a rien d'impossible, finalement, mais ça m'a l'air bien trop complexe pour être la solution...
Alors je ne veux pas me risquer à coder un truc qui par convention sera faux puisqu'il serait possible de faire bien plus simple