algorithme sur calcul de moyenne et de variance
-
Sshana67 dernière édition par mtschoon
Bonjouur tout le monde, j’ai un devoir maison pour demain que je n’arrive pas à faire sur les algorithmes (je suis vraiment nulle) quelqu’un pourrait m’aider svp ?
Voila le sujet : il y a 3 exercices le premier m’a l’air pas très compliqué mais je n’y arrive vraiment pas.
Exercice 1 : 1) faire fonctionner l’algo avec n=5 et la liste 8,12,5,9,13
2) appliquer l’algo a une autre serie
3) quel est le role de cet algo
Algoritmes :
Variables : n et i sont des nombres entiers naturels (x1;x2;....;xn) est une liste de nombres reels
S et m sont des nombres reels
Entrees : saisir n, x1,...,x2
Traitement: affecter a S la valeur 0
Pour i allant de 1 à n
I affectant S la valeur de S+x1
Fin pour
Sortie: afficher mExercice 2:
Ecrire un algorithme qui calcule et affiche la variance d’une serie de statistiques
Le tester avec la serie de l’exo 1
-
Sshana67 dernière édition par
@shana67
Pour l’exo 1 j’ai essayé qlq chose et j’ai obtenus des resultats or je ne suis pas sur de mes reponses.
-
shana67 , bonjour,
Tu as écrit ,
"I affectant S la valeur de S+x1"
Es-tu vraiment sûr de cette ligne ? ou il y a -t-il des fautes de frappe ?
Elle n'est pas claire...
Ce serait plutôt "Affecter à S la valeur S+xi"Je me demande aussi si tu n'as pas oublié de taper une ligne après "Fin pour" , qui expliquait la notation m
Merci de vérifier ton énoncé.
Propose tes réponses trouvées à l'exercice 1
-
Sshana67 dernière édition par
@mtschoon
Oui en effet je ne me suis pas relu c’est le correcteur automatique dsl
La phrase est bien « I affecter a la valeur S S+xi »
Et apres « fin pour » j’ai oublié « affecter a m la valeur S/n »
-
Sshana67 dernière édition par
@shana67
Pour l’exo 1 1) je ne sais pas comment presenter mais au brouillon j’ai ecrit cela :
S+x1 avec x1=8
S prend la valeur 0
S=S+8
Fin pour
m=S/n
m=8/5
m=1,6
J’ai fais cela pour toutes les valeurs de la liste
2) j’ai choisi d’autre valeur comme 11,6,4,15,2
Et j’ai reproduis les meme calculs que précédemment
3)J’en ai deduit que l’algorithme pouvait servir a calculer la moyenne et j’ai calculer la moyenne a la main sans algorithmes pour la premiere serie et la 2e et j’obtient les meme resultats
-
OK pour les modifications apportées à l'énoncé.
L'algorithme calcule effectivement la moyenne des valeurs x1,x2,...,xnx_1,x_2,...,x_nx1,x2,...,xn
Tu n'as pas bien compris la boucle
Pour i allant de 1 à n
Affecter à S la valeur S + xix_ixi
Fin pourJ'explicite avec les valeurs du 1)
Au départ : S=0
Pour i=1 S=0+x1x_1x1=0+8=8
Pour i=2, S=8+x2x_2x2=8+12=20
Pour i=3, S=20+x3x_3x3=20+5=25
Pour i=4, S=25+x4x_4x4=25+9=34
Pour i=5, S=34+x5x_5x5=34+13=47A la sortie de la boucle S=47 (somme des 5 termes de la liste)
m=Sn=475m=\frac{S}{n}=\frac{47}{5}m=nS=547=9.4
-
Sshana67 dernière édition par
@mtschoon
Oui c’est vrai je n’avais absolument pas compris cette etape la merci bcp je comprends largement mieux maintenant.
Du coup Il en est pareil pour le petit 2 avec d’autres nombres ?
-
Tout à fait.
La démarche est générale.
-
Sshana67 dernière édition par
@mtschoon
Super merci de m’avoir éclairé sur ce point la.
Pour l’exercice 2 il faut que j’écrive un algorithme qui calcule et affiche la variance d’une serie de statistiques en testant avec les valeur de la serie de l’exo 1
Du coup j’ai essayer d’ecrire un algorithme au brouillon mais il me parait long et avec des etapes en moins ou en trop je ne sais pas
Pourriez vous m’aider a nouveau svp ?
-
Idée :
Tu dois compléter l'algorithme précédent qui calcule la moyenne m par le calcul de la variance V
V=(x1−m)2+(x2−m)2+...+(xn−m)2n\boxed{V=\frac{(x_1-m)^2+(x_2-m)^2+...+(x_n-m)^2}{n}}V=n(x1−m)2+(x2−m)2+...+(xn−m)2Tu dois donc ajouter aux variables précédentes la variable C (qui calculera ((x1−m)2+..+(xn−m)2(x_1-m)^2+..+(x_n-m)^2(x1−m)2+..+(xn−m)2) ) et la variable V (qui calculera Cn\frac{C}{n}nC)
Dans le traitement, après le calcul de m, tu dois faire calculer V
(avec le même principe que celui de m) :Avec une boucle "Pour i allant de 1 à n .......Fin pour" tu feras calculer C, suivie de "affecter à V la valeur Cn\frac{C}{n}nC "(qui calculera V)
-
Sshana67 dernière édition par
@mtschoon
Donc si j’ai bien compris mon algorithme devrait plus ou moins ressembler à cela
Variables : n et i sont des nombres entiers naturels
(X1; x2;...) est une liste de nombres reels
C, m, S et V sont des nombres reels
Entrées: saisir x1;x2...
Traitement: (j’ai gardé les variables qui permettent de trouver m) affecter a S la valeur 0
Pour i allant de 1 a n
Affecter a S la valeur S+x1
Affecter a m la valeur S/n
Affecter a C la baleur (x1-m)^2
Fin pour
Sortie : affecter a V la valeur C/n
Afficher V
-
Il y a des modifications à apporter.
Dans la boucle que tu indiques , il ne s'agit pas de S+x1 ni de (x1-m)^2, il s'agit de S+xiS+x_iS+xi et de (xi−m)2(x_i-m)^2(xi−m)2
( i varie de 1 à n)Au départ , C=0 (à indiquer)
Le calcul de m se fait en sortant de la boucle (regarde l'algorithme donné dans l'énoncé), et c'est ensuite , lorsque m est calculé que tu fais une seconde boucle qui permet de calculer C (vu que la valeur de m intervient dans le calcul de C) puis calcul de V après la boucle qui calcule C.
-
Sshana67 dernière édition par
@mtschoon
D’accord merciii bcp
-
De rien !
A+