E-Bahut julesx Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Le 09/04/2021 à 08:30, Clemmellian a dit : Mais, je ne comprends pas la partie sur la variace je crois avoir compris L'écart type je le note comment ? Expand Bonjour, C'est compris, ou pas, pour la variance ? Quant à l'écart-type, tu lui donnes le nom que tu veux. De toute façon, tu n'en as pas vraiment besoin, puisque c'est sqrt(V). Après, tu peux toujours préciser lors de l'écriture des résultats. Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 Oui c'est bon pour la variance. Merci Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 import math def indicateur_var(n): liste_x=[] liste_proba=[] for i in range (n): a=float(input("saisir la valeur de Xi")) liste_x.append(a) b=float(input("saisir la probabilité Pi")) liste_proba.append(b) E=0 for k in range(n): E=E+(liste_x[k])*(liste_proba[k]) for k in range(n): V=V+liste_proba[k] *(liste_x[k]-E)**2 for k in range (n): Ecart: sqrt(V) return Ecart print(indicateur_var(3)) Citer
E-Bahut julesx Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Cette partie n'est pas correcte for k in range (n): Ecart: sqrt(V) return Ecart D'abord, inutile de calculer n fois l'écart-type, c'est toujours la même valeur puisque V ne change pas. Donc, un seul calcul suffit : pas de "for k in range(n)", Ecart=sqrt(V) suffit. Ensuite, tu ne retournes que l'écart-type alors que l'énoncé demande les 3 valeurs. Donc, de base, c'est return E,V,Ecart. Enfin, l'énoncé demande dans la question 5 de faire les calculs pour la variable Y, qui comporte 4 éléments. Alors rectifie et teste. Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 ça me met un message d'erreur Mais la je m'occuper que de la question 4 Citer
E-Bahut Denis CAMUS Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Initialise V et Ecart La racine carrée s'écrit : ...... = math.sqrt(....) mais tu dois avoir mis plus haut : import math ou bien ....**0.5 sans importation. Si tu ne veux pas que le calcul de l'écart se répète, tu dois le sortir de la boucle en supprimant une indentation. E = 0 V = 0 Ecart = 0 for k in range(n): E=E+(liste_x[k])*(liste_proba[k]) for k in range(n): V=V+liste_proba[k] *(liste_x[k]-E)**2 Ecart = (V)**0.5 return E,V,Ecart Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 Merci ça marche ! Citer
E-Bahut julesx Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Re-bonjour, Désolé pour l'oubli du math.sqrt et du V=0. Je les avais mis dans le script que j'ai testé, mais je les ai oublié ensuite.. Par contre, il est inutile d'initialiser Ecart puisque cette valeur est calculée à partir de V. Ce n'est pas la même chose que pour les deux sommes précédentes où il faut impérativement donner une valeur initiale aux variables avant de les introduire dans la boucle. Cela dit, tu as exécuté le script pour la variable Y et tu as vérifié les résultats à la calculette ? D'autre part, il reste la question 6. Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 Je suis en train de le faire à la main Citer
E-Bahut Denis CAMUS Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 @Clémence : Lorsque tu nous mets un script sur le forum sous forme de capture d'écran, c'est une image et si on veut y apporter des modifications, on est obligé de tout retaper. Prends l'habitude de le mettre entre les balises "code", c'est à dire qu'au moment de la rédaction, tu cliques sur l'icône < > et tu fais un copié-collé dans la fenêtre qui s'ouvre. Ainsi nous n'avons plus qu'à faire un copié pour l'intégrer dans notre éditeur Python. Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 Ah d'accord, bien sur ! def indicateur_var(n): liste_x=[] liste_proba=[] for i in range (n): a=float(input("saisir la valeur de Xi")) liste_x.append(a) b=float(input("saisir la probabilité Pi")) liste_proba.append(b) E=0 V=0 Ecart=0 for k in range(n): E=E+(liste_x[k])*(liste_proba[k]) for k in range(n): V= V+(liste_proba[k]) *(liste_x[k]-E)**2 Ecart=math.sqrt(V) return E,V,Ecart print(indicateur_var(4)) C'est bon, j'ai trouvé la question 5 et j'ai verifié à la calculatrice Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 Ensuite, pour la 6, j'ai voulu faire la loir de probabilité (à l'aide d'un tableau) : L'espérance vaut 2,17 ? Citer
E-Bahut julesx Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Le 09/04/2021 à 15:02, Clemmellian a dit : L'espérance vaut 2,17 ? Expand Pour la 6 ? De toute façon, le script doit te retourner 3 valeurs. Mais ce serait bien que tu donnes ta démarche pour le tableau. Citer
E-Bahut Denis CAMUS Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Sauf erreur, je trouve 5/3. Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 je pense m'être trompée Citer
E-Bahut Denis CAMUS Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Montre ton tableau ou ton arbre. Citer
E-Bahut julesx Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Je suis d'accord avec toi, as-tu entré ces données dans ton script ? N'oublie pas de changer 4 en 6 dans l'appel print(indicateur_var(6)) Citer
E-Bahut Denis CAMUS Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 En mettant tout en 1/15è ce serait plus facile. C'est plus rapide d'entrer des 2 et des 3. Tu entres les numérateurs lorsque l'on te demande la proba et dans le script tu divises au bon endroit par 15. Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 Mais juste comment écrire en langage python 1/3 ? Citer
E-Bahut Denis CAMUS Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Tu mets tout en 15 èmes. C'est ce que j'ai trouvé de plus rapide. for k in range(n): E=E+(liste_x[k])*(liste_proba[k])/15 for k in range(n): V=V+liste_proba[k] *(liste_x[k]-E)**2 /15 Ecart = math.sqrt(V) return E,V,Ecart Tu rentres uniquement les numérateurs des probas. Citer
E-Bahut julesx Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 Bonsoir à vous deux, Juste ce qui me chiffonne, c'est que, contrairement à ce qui est demandé, on ne reprend pas simplement le script établi à la question 5. On demande de "reprendre le script", pas de l'adapter au nouveau contexte. Pour moi, ce qu'on attendait, c'était des entrées de probabilités sous forme décimale, quitte à "tronquer" les 2/15 sous la forme 0,133. Mais ce que j'en dis... Citer
Clemmellian Posté(e) le 9 avril 2021 Auteur Signaler Posté(e) le 9 avril 2021 Je n'y arrive pas def indicateur_var(n): liste_x=[] liste_proba=[] for i in range (n): a=float(input("saisir la valeur de Xi")) liste_x.append(a) b=float(input("saisir la probabilité Pi")) liste_proba.append(b) E=0 V=0 Ecart=0 for k in range(n): E=E+(liste_x[k])*(liste_proba[k])/15 for k in range(n): V= V+(liste_proba[k]) *(liste_x[k]-E)**2/15 Ecart=math.sqrt(V) return E,V,Ecart print(indicateur_var(6)) Citer
E-Bahut julesx Posté(e) le 9 avril 2021 E-Bahut Signaler Posté(e) le 9 avril 2021 C'est normal, tu n'as plus mis en tête import math Citer
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.