Devinette avec Random

Page 2 sur 2 Précédent  1, 2

Voir le sujet précédent Voir le sujet suivant Aller en bas

Devinette avec Random

Message par methodiX le Ven 25 Jan - 1:46

Rappel du premier message :

Ecrire un programme qui permet de faire deviner un nombre choisi
aléatoirement entre 0 et 100 (fonction
random de la librairie stdlib). le
programme signalera à chaque tentative si le nombre proposé est plus
petit ou plus grand que la solution.

C'est un exercice qui m'a été proposé.

_________________
Sami - Methodix, tunis
Le génie de Newton a consisté à dire que la lune tombe alors que tout le monde voit bien qu'elle ne tombe pas.
(Paul Valéry)
_____
Cliquer ici: Voir les nouveaux messages depuis votre dernière visite
Cliquer ici: Astuce: Utiliser l'outil "Recherche" du forum
avatar
methodiX
Admin
Admin

Masculin
Nombre de messages : 1260
Localisation : Le couloir de l'école polytechnique de Tunis
Réputation : 68
Points : 4722
Date d'inscription : 22/03/2007

Feuille de personnage
Capacité linguistique:
1000/1000  (1000/1000)

Revenir en haut Aller en bas


Re: Devinette avec Random

Message par methodiX le Sam 26 Jan - 18:00

Revenons à nos moutons.

La preuve est trés simple. Comme l'ordinateur utilise une méthode dichotomique il faudra chercher :
2^x=1000 --> Ln(1000)/Ln(2)=9,xxx=10 essais

Si on pose la question autrement: quel est le nombre secret qui demande le maximum de propositions avant qu'il soit dévoilé, sachant que la méthode adoptée est la dichotomie biensûr ?

scratch

_________________
Sami - Methodix, tunis
Le génie de Newton a consisté à dire que la lune tombe alors que tout le monde voit bien qu'elle ne tombe pas.
(Paul Valéry)
_____
Cliquer ici: Voir les nouveaux messages depuis votre dernière visite
Cliquer ici: Astuce: Utiliser l'outil "Recherche" du forum
avatar
methodiX
Admin
Admin

Masculin
Nombre de messages : 1260
Localisation : Le couloir de l'école polytechnique de Tunis
Réputation : 68
Points : 4722
Date d'inscription : 22/03/2007

Feuille de personnage
Capacité linguistique:
1000/1000  (1000/1000)

Revenir en haut Aller en bas

Re: Devinette avec Random

Message par moudhafer le Mer 26 Mai - 4:35

on utilise le principe de la dichotomie comme ca si on veut deviner un nombre entre 0 et 1024 par exemple au pire cas on va faire 10 fois Smile))

moudhafer
Entier Naturel
Entier Naturel

Masculin
Nombre de messages : 58
Age : 28
Localisation : france
Réputation : 0
Points : 2832
Date d'inscription : 26/05/2010

Revenir en haut Aller en bas

Re: Devinette avec Random

Message par Napoléon le Mer 26 Mai - 13:09

moudhafer a écrit:on utilise le principe de la dichotomie comme ca si on veut deviner un nombre entre 0 et 1024 par exemple au pire cas on va faire 10 fois Smile))

Oui effectivement. ça ne dépasse pas 10 coups si le nombre est entre 0 et 1024;

Extensions :

Est-ce que tu peux déterminer le nombre maximal (au pire des cas) de coups si le nombre est entre 1000 et 2000 ?

Est-ce que tu peux caractériser le nombre le plus embêtant s'il existe (qui requiert le maximum de coup pour qu'on le devine) sachant qu'on travaille dans un intervalle borné I = [a, b].

_________________
Nabil - tunis
خير الناس أنفعهم للناس
avatar
Napoléon
Admin
Admin

Masculin
Nombre de messages : 2934
Localisation : Tunisie
Réputation : 122
Points : 5340
Date d'inscription : 19/03/2007

Feuille de personnage
Capacité linguistique:
999/1000  (999/1000)

http://infomath.online-talk.net

Revenir en haut Aller en bas

Re: Devinette avec Random

Message par moudhafer le Jeu 27 Mai - 3:08

je crois ce sont 4 nombres :
*a+1
*b-1
en premier lieu puis :
*(a+b)/2 -1
*(a+b)/2 +1
nn?

moudhafer
Entier Naturel
Entier Naturel

Masculin
Nombre de messages : 58
Age : 28
Localisation : france
Réputation : 0
Points : 2832
Date d'inscription : 26/05/2010

Revenir en haut Aller en bas

Re: Devinette avec Random

Message par moudhafer le Dim 30 Mai - 19:35

salem
j'attends votre reponse nabil,c bien ce que j'ai dit??

moudhafer
Entier Naturel
Entier Naturel

Masculin
Nombre de messages : 58
Age : 28
Localisation : france
Réputation : 0
Points : 2832
Date d'inscription : 26/05/2010

Revenir en haut Aller en bas

Re: Devinette avec Random

Message par methodiX le Mar 1 Juin - 0:26

moudhafer a écrit:je crois ce sont 4 nombres :
*a+1
*b-1
en premier lieu puis :
*(a+b)/2 -1
*(a+b)/2 +1
nn?

Intuitivement et en ignorant certains cas particuliers, je dis la même réponse.

Il suffit d'imaginer "la trajectoire" que parcourt la suite pendant la recherche de la solution. Supposons que le domaine de recherche est I [a, b] = [1, -1+2^n], et que le nombre à deviner est 1, si on procède comme l'avait indiqué l'énoncé, on proposera les nombres suivants dans l'ordre :

U1 = 2^(n-1)
U2 = 2^(n-2)
U3 = 2^(n-3)
...
U(n-2) = 4
U(n-1) = 2
U(n) = 1

Soit n = E(Log2(b+1)) opérations.

_________________
Sami - Methodix, tunis
Le génie de Newton a consisté à dire que la lune tombe alors que tout le monde voit bien qu'elle ne tombe pas.
(Paul Valéry)
_____
Cliquer ici: Voir les nouveaux messages depuis votre dernière visite
Cliquer ici: Astuce: Utiliser l'outil "Recherche" du forum
avatar
methodiX
Admin
Admin

Masculin
Nombre de messages : 1260
Localisation : Le couloir de l'école polytechnique de Tunis
Réputation : 68
Points : 4722
Date d'inscription : 22/03/2007

Feuille de personnage
Capacité linguistique:
1000/1000  (1000/1000)

Revenir en haut Aller en bas

Re: Devinette avec Random

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Page 2 sur 2 Précédent  1, 2

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum