J'écris actuellement du code pour générer des données binaires. J'ai spécifiquement besoin de générer des nombres 64 bits avec un nombre donné de bits définis; plus précisément, la procédure devrait prendre quelque et retourner un nombre pseudo-aléatoire de 64 bits avec exactement bits définis sur , et le reste réglé sur 0.
Mon approche actuelle implique quelque chose comme ceci:
- Générez un nombre pseudo-aléatoire de 64 bits .
- Comptez les bits en , en stockant le résultat en .
- Si , sortie ; sinon, passez à 1.
Cela fonctionne, mais cela semble inélégant. Existe-t-il une sorte d'algorithme PRNG qui peut générer des nombres avec bits définis plus élégamment que cela?