Algorithmique !

Fermé
Yoann34090 Messages postés 77 Date d'inscription samedi 6 septembre 2008 Statut Membre Dernière intervention 25 janvier 2009 - 20 nov. 2008 à 13:25
Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009 - 20 nov. 2008 à 23:53
Bonjour, je dois écrire une procédure "EstDansLeCercle?" qui étant 2 coordonnées x et y dans l'intervalle réel [0,1] teste si le point de coordonnées (x,y) est à l'intérieur du quart de cercle de rayon 1.
Il faut que j'utilise la méthode dite de "monté carlo", mais je ne vois pas du tout comment m'y prendre.

Merci de bien vouloir m'aider...

1 réponse

Marco la baraque Messages postés 996 Date d'inscription vendredi 9 mai 2008 Statut Contributeur Dernière intervention 5 novembre 2009 329
20 nov. 2008 à 23:53
Bonsoir Yoann34090,
La méthode de Monté Carlo est une méthode probabiliste et non pas déterministe, donc je ne comprends pas très bien ton exercice.

La méthode de Monté Carlo consiste à tirer un très grand nombre de valeurs selon une loi de probabilité donnée et d'en tirer des conclusions.
Appliqué à ton algorithme, ça consiste à tirer aléatoirement un très grand nombre de valeurs de x et de y et pour chaque couple ainsi tiré, tester si x²+y² <= 1. Si ton échantillon est assez grand, tu devrais approcher la valeur de Pi/4, mais nous allons noter P la probabilité que tu auras empiriquement trouvée.

En gros, ta procédure se résume donc à générer un nombre n entre 0 et 1 inclus aléatoirement, puis à le comparer avec P.
Si n > P, n n'est pas dans le quart de cercle.
Si n < P, n est dans le cercle.

Cordialement,
0