Nombre aléatoire sans répétition
Fermé
Issouff
Messages postés
7
Date d'inscription
samedi 11 juin 2016
Statut
Membre
Dernière intervention
31 janvier 2017
-
31 janv. 2017 à 23:39
luckydu43 Messages postés 3985 Date d'inscription vendredi 9 janvier 2015 Statut Membre Dernière intervention 23 décembre 2024 - 31 janv. 2017 à 23:52
luckydu43 Messages postés 3985 Date d'inscription vendredi 9 janvier 2015 Statut Membre Dernière intervention 23 décembre 2024 - 31 janv. 2017 à 23:52
A voir également:
- Générateur nombre aléatoire sans remise
- Remise a zero pc - Guide
- Generateur mot de passe - Télécharger - Sécurité
- Canva générateur d'image - Accueil - Outils
- Nombre facile - Télécharger - Outils professionnels
- Tirage au sort excel aléatoire sans doublon ✓ - Forum Excel
1 réponse
luckydu43
Messages postés
3985
Date d'inscription
vendredi 9 janvier 2015
Statut
Membre
Dernière intervention
23 décembre 2024
982
Modifié par luckydu43 le 31/01/2017 à 23:53
Modifié par luckydu43 le 31/01/2017 à 23:53
Bonsoir !
Déjà, vu que je code en Java, je ne parlerai pas de la syntaxe du code mais de l'analyse. Eh ouais --'
Bref ^_^
Je vois 2 manières pour ce faire :
Manière 1 : Stocker dans un conteneur quelconque (tableau, liste, enum, map, set...) une liste de nombres.
Utiliser la méthode random pour réarranger les termes de manière aléatoire. Le fait de replacer plusieurs fois le même terme ne pose alors pas de problème. Le tout sera de faire en sorte de le nombre de répétitions soit suffisamment grand pour être sûr à 95% que les termes ont tous changé de place. Ou non. Et ça donne une liste de nombres aléatoires différents mais l'ensemble des éléments générés sera forcément égal à l'ensemble de génération des nombres (tu veux des nombres de 3 à 42, tu auras TOUS les nombres de 3 à 42. Ni plus, ni moins).
Manière 2 : Stocker dans un conteneur quelconque chaque nombre généré, et si le nombre généré est déjà présent dans le conteneur... ne pas le rajouter. Cette méthode fonctionne bien pour le cas de la génération d'un nombre n de nombres situés dans un intervalle sans forcément demander à ce que n corresponde exactement au cardinal de i. Mais sans optimisation, cette manière est gourmande.
Si ça suffit, c'est top ;-)
Bon code
Luc
Les 3 plus grands mensonges du dev ? La doc sera faite plus tard... Le programme n'a aucun bug... Les spécifs sont finies...
Un peuple sacrifiant sa liberté pour plus de sécurité perd les deux.
Déjà, vu que je code en Java, je ne parlerai pas de la syntaxe du code mais de l'analyse. Eh ouais --'
Bref ^_^
Je vois 2 manières pour ce faire :
Manière 1 : Stocker dans un conteneur quelconque (tableau, liste, enum, map, set...) une liste de nombres.
Utiliser la méthode random pour réarranger les termes de manière aléatoire. Le fait de replacer plusieurs fois le même terme ne pose alors pas de problème. Le tout sera de faire en sorte de le nombre de répétitions soit suffisamment grand pour être sûr à 95% que les termes ont tous changé de place. Ou non. Et ça donne une liste de nombres aléatoires différents mais l'ensemble des éléments générés sera forcément égal à l'ensemble de génération des nombres (tu veux des nombres de 3 à 42, tu auras TOUS les nombres de 3 à 42. Ni plus, ni moins).
Manière 2 : Stocker dans un conteneur quelconque chaque nombre généré, et si le nombre généré est déjà présent dans le conteneur... ne pas le rajouter. Cette méthode fonctionne bien pour le cas de la génération d'un nombre n de nombres situés dans un intervalle sans forcément demander à ce que n corresponde exactement au cardinal de i. Mais sans optimisation, cette manière est gourmande.
Si ça suffit, c'est top ;-)
Bon code
Luc
Les 3 plus grands mensonges du dev ? La doc sera faite plus tard... Le programme n'a aucun bug... Les spécifs sont finies...
Un peuple sacrifiant sa liberté pour plus de sécurité perd les deux.