Comment ça marche
Réglez un minimum et un maximum (les négatifs sont autorisés), choisissez combien de nombres vous voulez et indiquez si les doublons sont admis. Le widget tire des entiers uniformes cryptographiquement dans la plage inclusive. Sans répétition, il utilise un Fisher–Yates partiel : tirer 100 nombres entre 1 et 1 000 000 reste rapide et donne des résultats réellement uniformes, sans explosion de la boucle de rejet. La sortie est triée croissante pour repérer le plus petit/grand d'un coup d'œil — c'est souvent plus utile que l'ordre du tirage (les gagnants d'une tombola sont annoncés par numéro de ticket croissant, les numéros de loto se lisent dans l'ordre, etc.).
La formule
N est le nombre de tirages, min/max les bornes incluses. L'étape « échantillonnage par rejet » écarte les valeurs d'octet qui tomberaient dans la petite « zone de reste » où le modulo sur-représenterait le bas de la plage — même astuce d'uniformité que le lanceur de dés. Le tirage Fisher–Yates est l'algorithme classique « mélanger un paquet et prendre les N premières cartes », simplifié pour ne tirer que N cartes au lieu de mélanger tout le paquet. En O(N) temps et O(max-min) mémoire.
Exemple de calcul
- Loto 6/49 : min=1, max=49, nombre=6, sans répétition → par ex. [4, 11, 19, 27, 33, 42].
- Simulation pile/face : min=0, max=1, nombre=20 avec répétition → 20 zéros/uns pour démo de stats.
- Anomalie de température au hasard : min=-30, max=45, nombre=1 → par ex. -7.
Questions fréquentes
Puis-je tirer des décimaux (par ex. 0,0–1,0) et pas seulement des entiers ?
Pas directement — le widget renvoie des entiers. Pour 0,0–1,0 à trois décimales, demandez des entiers dans 0–1000 et divisez par 1000 mentalement (ou dans un tableur). Pour une précision arbitraire, une future option « nombre de décimales » pourrait être ajoutée, mais la version entière couvre >95% des cas réels (tombolas, tirages type dé, choix dans une liste discrète).
Pourquoi les résultats sont-ils triés ?
Parce que pour la plupart des usages (gagnants de tombola, numéros de loto, échantillonnage), l'ordre de tirage n'a pas d'importance — on veut voir quels numéros sont sortis, vite. Trié croissant, on repère immédiatement le plus petit et le plus grand. Si l'ordre de tirage compte (par ex. pour un classement), générez un par un avec quantité = 1 et copiez chaque résultat avant de relancer.
Quelle différence entre « avec répétition » et « sans » ?
« Avec répétition » signifie que chaque tirage est indépendant — le même nombre peut sortir deux fois (ou plus) dans le même lot. En maths : tirage « avec remise ». Utile quand on veut un tirage indépendant à chaque fois (simuler pile/face, générer un flux de valeurs de test sans corrélation). « Sans répétition » signifie qu'un même nombre n'apparaît qu'une fois dans le lot, comme tirer des boules d'un sac sans les y remettre. Utile quand il y a un nombre fini de places (tickets de tombola, numéros de loto, tirage d'équipes dans une liste).
Y a-t-il une plage ou un nombre maximum ?
Le widget limite « combien » à 500 pour que la liste reste lisible. La plage elle-même va jusqu'à environ ±2 milliards (limite des entiers 32 bits), donc en usage normal vous ne l'atteindrez pas. Sans répétition, la quantité doit évidemment être ≤ (max − min + 1) — impossible de tirer 100 uniques dans une plage de 50. Le widget affiche une erreur si vous demandez l'impossible.