Dm algorithme

Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

Dm algorithme

par Siriuss » 30 Sep 2012, 17:47

Bonjour
J'ai un dm à faire mais je suis bloqué à la question 2a.
Voici l'énoncé :
Un sac contient 3 jetons : l'un est rouge, l'autre est noir et le troisième, bicolore, a une face rouge et une face noire.
1. On tire au hasard un jeton et on ne regarde qu'une seule face : elle est noire. Quelle est la probabilité d'avoir en main le jeton noir ? le jeton bicolore ? le jeton rouge ?

2.a. Programmer un algorithme simulant 2500 réalisations de la situation précédemment décrite et faire afficher la fréquence d'apparition de l'issue (N;N) parmi les issues commençant par N où N désigne une face noire.

b. Les fréquences fournies confortent-elles les probabilités calculées à la question 1 ?

Donc voilà j'ai répondu à la 1 :
p(n) = 1/2
p(nr) = 1/2
p(r) = 0/3

Est-ce juste ?

Pouvez-vous m'aider pour la question 2 ? Merci !



Anonyme

par Anonyme » 30 Sep 2012, 18:23

@Siriuss
Tes résultats sont faux car il y a 3 jetons donc 3 issus ( même si en fait il y a que 2 couleurs possibles : Rouge ou Noir )
Fais un arbre pour calculer les probabilités de tes événements

Il faut pour chaque événement dont tu veux calculer la probabilité calculer le nombre de cas favorables sur le nombre de cas possibles

Pour la simulation (question 2) , il faut prendre soit un tableau excel , soit faire un algorithme sur ta calculatrice en utilisant l'instruction ENT(NbrAléat *2) : ce qui permet d'obtenir un nombre "au hasard" parmi les nombres 0 , 1 , 2

Et tu peux programmer que :
le nombre 0 correspond au jeton noir
1 correspond au jeton rouge
2 correspond au jeton bicolore

Conseil :
Si tu n'as jamais utilisé ce type d'instruction , cherches sur internet des exemples d'algorithmes similaires

Anonyme

par Anonyme » 30 Sep 2012, 18:32

@Siriuss
Tes résultats sont JUSTES ( ce sont des calculs de probas conditionnelles)

Pour la simulation (question 2) , il faut prendre soit un tableau excel , soit faire un algorithme sur ta calculatrice en utilisant l'instruction ENT(NbrAléat *2) : ce qui permet d'obtenir un nombre "au hasard" parmi les nombres 0 , 1 , 2

Et tu peux programmer que :
le nombre 0 correspond au jeton noir
1 correspond au jeton rouge
2 correspond au jeton bicolore

Ceci permet donc de simuler un tirage d'1 jeton du sac

Conseil :
Si tu n'as jamais utilisé ce type d'instruction , cherche sur internet des exemples d'algorithmes similaires

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 30 Sep 2012, 18:43

Merci pour votre réponse mais je dois faire cet algorithme sur algobox et je ne vois pas comment faire. Et je ne sais pas non plus comment faire pour qu'il y ait 2500 réalisations

Anonyme

par Anonyme » 30 Sep 2012, 18:46

Siriuss a écrit:Merci pour votre réponse mais je dois faire cet algorithme sur algobox et je ne vois pas comment faire. Et je ne sais pas non plus comment faire pour qu'il y ait 2500 réalisations

C'est une boucle

exemple : for i from 1 to 2500 ( syntaxe à vérifier)

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 30 Sep 2012, 19:01

D'accord merci !

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 30 Sep 2012, 19:18

Désolée mais je ne vois vraiment pas comment je peux faire...
Il faut d'abord déclarer les variables donc j'ai déclaré f (la fréquence), i pour les répétitions. Est-ce qu'il y a d'autres variables à déclarer ?
Ensuite j'ai mis lire f
Puis pour i allant de 1 à 2500

Est ce que j'ai oublié quelque chose ? Et pour la suite je ne vois pas ce que je dois faire...

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 30 Sep 2012, 20:49

Merci pour votre aide ! :)

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 01 Oct 2012, 17:06

J'ai beau chercher je n'y arrive pas. Quelqu'un pourrait m'aider ?

C.Ret
Membre Relatif
Messages: 497
Enregistré le: 02 Juil 2012, 12:33

par C.Ret » 01 Oct 2012, 17:22

Bonsoir,

Oui, faire un algorithme revient à décomposer un peu bêtement ce qu'il faut faire afin de pouvoir le programmer dans une machine (un général un ordinateur).

Comme il faut faire cet algorithme pour AlgoBox, nous allons reprendre la structure type :

Code: Tout sélectionner
1;  VARIABLES
2;
3;  DEBUT_ALGORITHME
4;   
5;  FIN_ALGORITHME



Le variables, nous allons définir ce que nous avons besoin au fur et à mesure de l'analyse.

Pour commencer, il faut que nous comprenions bien ce que doit produire l'algorime, c'est à dire quel est le (ou les) résultat(s) attendus :

Je propose de continuer pas à pas:
Commençon donc par trouver la réponse à cette question :
Que doit fournir l'algorithme ?

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 01 Oct 2012, 17:25

Je pense que l'algorithme doit donner la fréquence d'apparition du jeton noire dans 2500 réalisations ?

C.Ret
Membre Relatif
Messages: 497
Enregistré le: 02 Juil 2012, 12:33

par C.Ret » 01 Oct 2012, 17:39

Siriuss a écrit:Je pense que l'algorithme doit donner la fréquence d'apparition du jeton noire dans 2500 réalisations ?


Oui, il nous faut donc :
- déclarer une variable, nous l'appèlerons JN qui donnera le nombre de fois que l'on a tiré le jeton noir.
- indiquer à la fin de l'algorithme ce nombre de fois.


Par ailleurs, nous allons simuler 2500 fois le tirage au hasard de l'un des trois jeton.
Il nous faut donc pour cela déclarer une variable qui permettra à la machine de compter le nombre de fois qu'elle répète l'opération.
On sait aussi que quelque part dans l'algorithme, il y aura un endroit où l'on demande de répèter la simulation :


On a donc l'algorithme suivant :
Code: Tout sélectionner
1;   VARIABLES
2;     JN EST_DU_TYPE NOMBRE     // Nombre de fois que le jeton Noir est tiré
3;     r EST_DU_TYPE NOMBRE      // variable pour itérations
4;
5;   DEBUT_ALGORITHME
6;
7;     POUR r ALLANT_DE 1 A 2500
8;         DEBUT_POUR
9;   
10;        FIN_POUR
11;   AFFICHER "A l'issue de 2500 réalisations:"
12;   AFFICHER "Le Jeton noir est apparu   " ; JN
13;
14; FIN_ALGORITHME


Bon, comment va-t-on simuler le tirage au sort d'un des trois jetons ??

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 01 Oct 2012, 17:49

Euh... On peut mettre un nombre pour chaque jeton, et dire si le tirage est < ou = à 1 par exemple, le jeton tiré sera noir ?

rambo83
Messages: 9
Enregistré le: 01 Oct 2012, 18:29

DM pour demain

par rambo83 » 01 Oct 2012, 18:32

Bonsoir j'ai le même DM à faire pour demain j'y travaille depuis vendredi et je n'ai toujours pas réussi ! Pouvez vous m'aider ?

C.Ret
Membre Relatif
Messages: 497
Enregistré le: 02 Juil 2012, 12:33

par C.Ret » 01 Oct 2012, 18:32

Siriuss a écrit:Euh... On peut mettre un nombre pour chaque jeton, et dire si le tirage est < ou = à 1 par exemple, le jeton tiré sera noir ?


Très bonne idée, je propose de "coder" le type de jeton :
1 == Jeton noir
2 == Jeton Bicolore
3 == Jeton Rouge

Appelons J la variable qui code pour le jeton.
Il faut donc déclarer cette variable supplèmentaire

Au cours de chaque simulation, on tire au hasard une des trois valeurs pour J

Si J == 1 alors cela signifie que l'on a tiré le jeton Noir

Cela se traduit directement dans l'algorithme:

Code: Tout sélectionner
1 ; VARIABLES
2 ;  // Nombre de fois que le jeton Noir est tiré
3 ;      JN EST_DU_TYPE NOMBRE
4 ;
5 ;   //  type de jeton tiré 1= noir, 2=bicolore  3=rouge
6 ;       j EST_DU_TYPE NOMBRE
7 ;
8 ;   // variable pour itérations
9 ;       r EST_DU_TYPE NOMBRE
10;
11;  DEBUT_ALGORITHME
12;
13;  // Boucle pour réalisation des 2500 simulations
14;     POUR r ALLANT_DE 1 A 2500
15;     DEBUT_POUR   // simulation
16;
17;     j PREND_LA_VALEUR algobox_alea_ent(1,3)
18;      //  j == 1 pour le jeton noir
19;      //  j == 2 pour le jeton bicolore
20;      //  j == 3 pour le jeton rouge
21;      SI (j==1) ALORS
22;       DEBUT_SI   // jeton noir a été tiré
23;
24;       FIN_SI
25;    FIN_POUR // simulation
26;
27;    AFFICHER "A l'issue de 2500 réalisations "*
28;    AFFICHER "Le jeton noir est apparu "
29;    AFFICHER JN
30;    AFFICHER "fois "*
31;
32;FIN_ALGORITHME



Reste encore à décrire quoi faire quand on tire un jeton noir, c'est à dire comment faire pour compter les jeton noir dans la variable JN ?!?

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 01 Oct 2012, 18:33

Ben moi je suis bloqué au dernier message de C.ret...

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 01 Oct 2012, 18:38

Donc déjà j'ai une question, comment fait-on pour marquer "nombre de fois que le jeton noir est tiré" par exemple ?

Euh ben il faut calculer la fréquence non ?

rambo83
Messages: 9
Enregistré le: 01 Oct 2012, 18:29

par rambo83 » 01 Oct 2012, 18:40

C.Ret a écrit:Très bonne idée, je propose de "coder" le type de jeton :
1 == Jeton noir
2 == Jeton Bicolore
3 == Jeton Rouge

Appelons J la variable qui code pour le jeton.
Il faut donc déclarer cette variable supplèmentaire

Au cours de chaque simulation, on tire au hasard une des trois valeurs pour J

Si J == 1 alors cela signifie que l'on a tiré le jeton Noir

Cela se traduit directement dans l'algorithme:

Code: Tout sélectionner
1 ; VARIABLES
2 ;  // Nombre de fois que le jeton Noir est tiré
3 ;      JN EST_DU_TYPE NOMBRE
4 ;
5 ;   //  type de jeton tiré 1= noir, 2=bicolore  3=rouge
6 ;       j EST_DU_TYPE NOMBRE
7 ;
8 ;   // variable pour itérations
9 ;       r EST_DU_TYPE NOMBRE
10;
11;  DEBUT_ALGORITHME
12;
13;  // Boucle pour réalisation des 2500 simulations
14;     POUR r ALLANT_DE 1 A 2500
15;     DEBUT_POUR   // simulation
16;
17;     j PREND_LA_VALEUR algobox_alea_ent(1,3)
18;      //  j == 1 pour le jeton noir
19;      //  j == 2 pour le jeton bicolore
20;      //  j == 3 pour le jeton rouge
21;      SI (j==1) ALORS
22;       DEBUT_SI   // jeton noir a été tiré
23;
24;       FIN_SI
25;    FIN_POUR // simulation
26;
27;    AFFICHER "A l'issue de 2500 réalisations "*
28;    AFFICHER "Le jeton noir est apparu "
29;    AFFICHER JN
30;    AFFICHER "fois "*
31;
32;FIN_ALGORITHME



Reste encore à décrire quoi faire quand on tire un jeton noir, c'est à dire comment faire pour compter les jeton noir dans la variable JN ?!?


Je dirai qu'on pourrai mettre JN prend la valeur random(j) , non ?

C.Ret
Membre Relatif
Messages: 497
Enregistré le: 02 Juil 2012, 12:33

par C.Ret » 01 Oct 2012, 18:48

rambo83 a écrit:Je dirai qu'on pourrai mettre JN prend la valeur random(j) , non ?


Oui, mais dans notre algo c'est la varaible J qui contient aléatoirement 1,2 ou 3 selon que l'odinateur simule la tirage du jeton noir, bicolore ou rouge.

Avec ALGOBOX, la fonction RANDOM est prévue, c'est ALGOBOX_ALE_ENT(a,b) qui tire un nombre entier aléatoirement entre a et b.

Dans notre cas, on a pris 1, 2 ou trois pour désigner l'un des trois jetons.


Maintenant, l'étape suivante est de compter le nombre de fois que le jeton noir est tiré ! Car effectivement cela n'est pas encore fait dans notre algorithme inachevé.


En informatique, on utilise bien évidemment une variable, et comme elle sert à compter, on appèle cela un compteur.

En fait, la variable on l'a déjà déclarée, c'est JN que l'on a définit comme étant le nombre de fois que l'on a tiré le jeton noir.

Comment utilise-t-on un compteur en algorithmie ??


Une autre bonne question qui a été posée concerne le calcul de la fréquence, car effectivement, compter le nombre de fois que l'on tire le jeton, n'est pas exactement le calcul de la fréquence.

Pour une raison que je dévoilerais plus tard, je propose d'appeler cette variable PN (P comme probabilité et N come jeton noir).

Quelle est la ralation entre notre nombre de tirages JN et PN ?

Siriuss
Membre Naturel
Messages: 41
Enregistré le: 30 Sep 2012, 17:31

par Siriuss » 01 Oct 2012, 19:01

Pour le compteur, je ne sais pas mais pour la relation, je dirais : JN/PN ?

 

Retourner vers ✎✎ Lycée

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 25 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite