IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

[Nombres pseudo-aléatoires]Génération de bits


Sujet :

Algorithmes et structures de données

  1. #1
    Membre régulier Avatar de kaisse
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 100
    Points : 117
    Points
    117
    Par défaut [résolu][Nombres pseudo-aléatoires]Génération de bits
    Bonjour,

    j'envisage de créer une bibliothéque de générateurs de nombres pseudo-aléatoires. Certains ne posent pas de problèmes comme par exemple le générateur linéaire congruentiel. Mais pour les générateurs de suites de bits, comme le générateur RSA ou celui basé sur le problème du logarithme discret, je me demande comment faire pour génerer un nombre compris entre deux valeurs ?

    Par exemple:

    si je veux génerer un entier entre 0 et x:
    si x est une puissance de deux, pas de problèmes, il suffit de génerer n bits ou x=2^n
    mais si x n'est pas une puissance de 2 ? Je fais comment ?

    Comme on a 2^n < x < 2^(n+1) , si je ne genere que n bits, je n'aurais pas certaines valeurs, si je genere n+1 bits certaines valeurs dépasseront x. Dois-je alors appliquer un modulo x, au risque d'augmenter les fréquences d'apparitions des premiers nombres ? Y'a-t'il une solution plus élégante ?

    Merci d'avance pour vos réponses

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Août 2003
    Messages
    247
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 247
    Points : 276
    Points
    276
    Par défaut
    Je pense que si tu ignore les nombres plus grands que x en refaisant un tirage à chaque occurence de ceux-ci, tu devrais obtenir un générateur statistiquement correct.
    Evidemment, si x est juste légerement plus grand qu'une puissance de deux, il faudra tirer quasiment chaque nombre en double.

  3. #3
    Membre régulier Avatar de kaisse
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 100
    Points : 117
    Points
    117
    Par défaut
    D'accord, j'ai bien peur que pour des "grands nombres" ca risquede mettre un peu de temps. En même temps, quand on genere une grande clé aléatoire, c'est pour pouvoir l'utiliser un certain bout de temps. Merci pour ton conseil

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Nombre (pseudo-) aléatoire
    Par So.Ta dans le forum Ada
    Réponses: 5
    Dernier message: 23/05/2008, 10h56
  2. Utilisation d'un nombre pseudo-aléatoire
    Par GESCLS dans le forum C
    Réponses: 2
    Dernier message: 12/11/2007, 16h33
  3. Etude sur les nombres pseudo-aléatoires
    Par odsen.s dans le forum C
    Réponses: 14
    Dernier message: 21/05/2007, 00h09
  4. générateur de nombres pseudo-aléatoire
    Par salseropom dans le forum C
    Réponses: 3
    Dernier message: 22/08/2006, 13h21
  5. Générateur de nombres pseudo-aléatoires
    Par gege2061 dans le forum Algorithmes et structures de données
    Réponses: 10
    Dernier message: 25/08/2005, 13h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo