Blog
Français

Générateur de nombres aléatoires — min, max, sans doublon

Un générateur de nombres aléatoires cryptographique avec intervalle, mode sans doublon et décimales

Traitement dans le navigateur · aucun envoi de fichier

Type de nombre
Tri
Séparateur
Résultat

Rien pour l’instant. Appuyez sur « Générer ».

Présentation

Indiquez un minimum, un maximum et le nombre de valeurs voulues : l’outil les tire pour vous. Il sert pour une tombola, un ordre de passage, des données de test, une règle maison de jeu de société, ou chaque fois qu’il faut un nombre que personne n’a choisi. Les intervalles négatifs sont acceptés, et vous pouvez passer aux décimaux avec un nombre fixe de chiffres après la virgule. Tout se passe dans l’onglet de votre navigateur : vos réglages et vos résultats ne sont jamais envoyés à un serveur.

Mode d’emploi

  1. Choisissez Entiers ou Décimaux.
  2. Saisissez le minimum et le maximum. Les deux bornes peuvent sortir.
  3. Indiquez combien de nombres vous voulez, de 1 à 10 000.
  4. Cochez Sans doublon si tous les nombres doivent être différents. Pour les décimaux, choisissez aussi le nombre de décimales.
  5. Appuyez sur Générer. Modifiez le tri et le séparateur en regardant le résultat, puis utilisez Copier pour l’emporter.

Fonctionnement

  • Source du hasard : uniquement des valeurs de 32 bits issues de crypto.getRandomValues. Math.random n’est jamais utilisé.
  • Uniformité : prendre une valeur brute de 32 bits modulo la taille de l’intervalle avantage légèrement les petits nombres. L’outil écarte les valeurs de la partie incomplète et retire (échantillonnage par rejet), si bien que chaque nombre a la même chance.
  • Très grands intervalles : au-delà de 2^32 valeurs, le calcul passe en BigInt, ce qui garde le tirage sans biais même sur toute la plage de plus ou moins 9 007 199 254 740 991.
  • Sans doublon : l’algorithme d’échantillonnage de Floyd choisit exactement le nombre de valeurs demandé sans énumérer tout l’intervalle. Chaque combinaison possible est équiprobable, et l’ordre est mélangé sauf si vous choisissez un tri.
  • Décimaux : l’outil choisit uniformément parmi tous les multiples de 10^-décimales compris entre vos bornes (pas de 0.01 pour deux décimales) et les écrit sous forme de texte exact, sans bruit d’arrondi en virgule flottante. Le séparateur décimal affiché est le point.
  • Options d’affichage : le tri et le séparateur (virgule, espace, retour à la ligne) remettent en forme les nombres tirés sans relancer le tirage.

Exemples

Réglages Résultat possible
1 à 49, 5 nombres, sans doublon, croissant 3, 11, 19, 27, 44
-10 à 10, 5 nombres 7, -3, -3, 0, 10 (négatifs et répétitions autorisés)
0 à 1, 2 décimales, 3 nombres 0.27, 0.84, 0.05
1 à 100, 1 nombre une seule valeur entre 1 et 100

Questions fréquentes

Les nombres sont-ils vraiment aléatoires ? Quelle différence avec Math.random ?

L’outil utilise uniquement le générateur cryptographique intégré à votre navigateur (crypto.getRandomValues), jamais Math.random. Il élimine aussi le biais du modulo en rejetant les quelques valeurs brutes qui favoriseraient les petits nombres et en tirant à nouveau (échantillonnage par rejet). Chaque nombre de l’intervalle a donc exactement la même probabilité.

Que se passe-t-il en mode sans doublon si je demande plus de nombres que l’intervalle n’en contient ?

Impossible de tirer 6 nombres différents entre 1 et 5. L’outil affiche alors une erreur et ne tire rien. Élargissez l’intervalle ou réduisez la quantité. Même pour un intervalle immense, seul le travail nécessaire est effectué, le tirage reste donc rapide.

Jusqu’à quelle taille peuvent aller les nombres ?

En mode entier, toute valeur entre -9 007 199 254 740 991 et 9 007 199 254 740 991 est acceptée, soit la limite des entiers exacts en JavaScript. Vous pouvez tirer de 1 à 10 000 nombres à la fois.

Changer le tri ou le séparateur relance-t-il le tirage ?

Non. Le tri et le séparateur modifient seulement l’affichage des nombres déjà tirés. Appuyez sur Générer pour obtenir de nouveaux nombres.

Puis-je saisir une virgule décimale ?

Non, les bornes se saisissent avec un point décimal, par exemple 0.5 ou 12.75. Une virgule rend la valeur invalide. Les décimaux tirés sont eux aussi affichés avec un point.

Il vous manque un outil ?