Créer à l'aide d'Algobox une simulation d'expérience aléatoire


  • A

    Bonjour,

    J'ai un exercice à faire, qui me pose un énorme problème étant donné que j'ai de petites lacunes en mathématiques, et spécialement dans ce genre d'exercices. On nous demande de créer à l'aide d'Algobox une simulation d'expérience aléatoire...

    (Voici l'énoncé de cet exercice : On considère une expérience aléatoire à deux issues (S: "succès" et E : "echec" en modélisant le succès S par la valeur 1 et l'échec 0 par la valeur 0), écrire un algorithme permettant de constituer un échantillon de taille 50, dont la probabilité du succès est p, et calculant la fréquence f d'apparition du succès dans cet échantillon.

    • Par contre je ne sais pas si cela va servir pour ce point d'exercice cependant j'ai comme données en plus :
      p=0,4 et n=50 - )

    Voici un début de mon algorithme, en étant incertaine de ce que j'ai fait...

    http://img15.hostingpics.net/pics/753143DETYDY.png

    Merci de m'aider s'il vous plait


  • mtschoon

    Bonjour,

    Effectivement, vu l'énoncé, n=50 et p=0.4 servent.

    Si ça peut t'être utile, je te propose un exemple d'algorithme.

    n est le nombre d'épreuves ( 50)
    i est le compteur de boucles ( de 1 à 50)
    s représente le nombre de 1 obtenus parmi ces 50 épreuves
    Vu que 1 doit être obtenu avec la probabilité 0.4 ( 4/10) , j'ai "bricolé" une formule.
    a est un entier aléatoire compris entre 1 et 10
    Lorsque a est compris entre 1 et 4 , le programme ajoute 1 à s.
    f est la fréquence , c'est à dire le quotient s/n

    fichier math

    Je suppose que le but de cet algorithme est de comparer f avec p


  • A

    Merci beaucoup ce petit exemple m'a beaucoup aidé à comprendre le processus de cet algorithme !

    Donc voilà mon algorithme de fait je pense que celui-ci est juste, il m'affiche que la fréquence de succès est de 1. Pourrai-je avoir une petite vérification ? : -l'image est scindée en deux parties car l'algorithme était long mais tout y est !-

    http://img11.hostingpics.net/pics/450388191.png

    http://img11.hostingpics.net/pics/706826902.png


  • mtschoon

    C'est beaucoup mieux que ta première suggestion, mais deux choses ne vont pas.

    1. Il y a une faute de syntaxe car la condition SI (o=1) n'est pas comprise par Algobox; la bonne syntaxe est SI (o==1)
      C'est pour cela que tu trouves f=1 qui est faux.

    Si tu modifies la condition comme je te l'indique SI (o==1), tu dois trouver une fréquence voisine de 0.5 .

    2)Tu n'as pas tenu compte de la probabilité 0.4 d'obtenir un succès.

    Remarque : la variable e et SINON...FIN_SINON est juste mais ce n'est pas utile vu que ça ne sert pas pour la fréquence f demandée.

    Alors, à toi de choisir.

    En prenant ton programme avec la modification indiquée, le fonctionnement sera normal, mais ne respectera pas la probabilité 0.4; Tu auras traité le cas de "l'équiprobabilité".

    En prenant le programme que je t'ai proposé, lorsque tu auras compris, tu auras respecté la probabilité p=0.4


  • A

    Le fait que ce soit un "exemple" m'a troublé, mais effectivement en reprenant votre algorithme je trouve le bon résultat. Je croyais que l'énoncer et les données (qui servent pour ma deuxième question de calcul) n'avaient rien à voir! Je viens de comprendre l'énoncé maintenant, merci beaucoup de votre aide !

    Cependant, dans la troisième question on me demande de faire la même chose mais avec 100 échantillon de taille 50 ! Je me suis dis alors qu'ils fallait multiplier 50 par 1000 est mettre que n était égal à 5000 dans l'algorithme...


  • mtschoon

    Je t'avais indiqué "exemple" pour ne pas t'imposer un algorithme et te laisser la possibilité de l'améliorer à ta guise.

    Pour la 3ème question, ta démarche n'est pas bonne.

    Pour comprendre :

    Lorsque tu exécutes une fois l'algorithme précédent, tu obtiens une valeur de f
    Si tu l'exécutes 100 fois (donc 100 échantillons différents) , tu obtiens 100 valeurs de f
    Donc, pour ta question 3, tu dois compléter l'algorithme précédent pour le faire "tourner" 100 fois.
    Mais, j'ignore ce que tu dois faire de ces 100 valeurs de f. Peut-être en faire la moyenne? Je l'ignore, mais ça serait une bonne idée, je trouve.


  • A

    D'accord, merci du coup de main je vais essayer !

    Oui, en fait notre professeur nous a suggéré cet exercice afin de nous entraîner sur algobox. (la dernière question n'étant pas à faire nous demande de programmer tous ça sur notre calculatrice scientifique, donc peut-être Est-ce un exercice d'entrainement?) donc ce n'était pas un exercice obligatoire mais seulement pour ceux qui voulaient prendre plus connaissance avec ce logiciel, donc j'étais assez intéressée, car de plus algobox est un logiciel dont j'avais du mal à en comprendre l'utilité, puis comment s'en servir! Mais je commence à comprendre même si chaque petite donnée est importante à son bon fonctionnement !


  • mtschoon

    Bon entrainement !


  • A

    Merci beaucoup !
    Par contre voici enfin mes 100 échantillons de taille 50, Est-ce juste ?

    Je l'ai testé et j'ai bien 100 valeurs !

    http://img11.hostingpics.net/pics/789714801.png

    http://img11.hostingpics.net/pics/144041152.png


  • mtschoon

    Vérifie.

    Ce nouveau programme doit exécuter 100 fois le programme précédent.

    Le programme précédent te donne une fréquence f voisine de 0.4

    Ce nouveau programme devrait donc te donner 100 fréquences voisines de 0.4.

    Si ce n'est pas le cas, cherche l'erreur...


  • A

    Décidemment je n'y arrive pas du tout...J'ai cherchée et je n'ai pas compris l'erreur, car mes valeurs sont croissantes alors qu'ils ne faut pas. 😕


  • mtschoon

    C'est l'instruction "s prend la valeur 0" qui est mal placée.

    A l'endroit où tu l'as mise, s n'est pas initialisée à 0 avant chaque tour de boucle . Ainsi, les valeurs de s s'ajoutent aux précédentes et f augmente.

    L'instruction doit être placée à l'intérieur de la boucle "POUR e ALLANT DE 1 A 100... " juste après "DEBUT POUR" et avant "POUR i ALLANT de 1 A n"


  • A

    Merci beaucoup ! (Alors c'était si bête que ça l'erreur...comme je le disais le moindre détail compte!)


  • mtschoon

    Effectivement, c'est une démarche 100% logique qu'il faut faire.

    Il faut arriver à réaliser le mécanisme de fonctionnement des boucles pour ne pas faire d'erreur.

    Si tu as compris, c'est très bien!


Se connecter pour répondre