Générer des nombres aléatoires sans les répéter.
Iternity
Messages postés
32
Date d'inscription
Statut
Membre
Dernière intervention
-
Iternity Messages postés 32 Date d'inscription Statut Membre Dernière intervention -
Iternity Messages postés 32 Date d'inscription Statut Membre Dernière intervention -
Bonsoir à tous.
J'apprends le c# et je suis bloqué devant un exercice qui consiste à générer des nombres aléatoires mais sans répéter un nombre deux fois. Par exemple comment choisir successivement 5 nombres entre 1 et 15 sans répéter aucun d'eux.
je précise que j'arrive déjà à générer des nombres aléatoires grâce à la classe Random. Mon problème se situe plutôt sur comment faire pour ne pas répéter les nombres.
MERCI.
J'apprends le c# et je suis bloqué devant un exercice qui consiste à générer des nombres aléatoires mais sans répéter un nombre deux fois. Par exemple comment choisir successivement 5 nombres entre 1 et 15 sans répéter aucun d'eux.
je précise que j'arrive déjà à générer des nombres aléatoires grâce à la classe Random. Mon problème se situe plutôt sur comment faire pour ne pas répéter les nombres.
MERCI.
A voir également:
- Générer des nombres aléatoires sans les répéter.
- Generer mot de passe - Télécharger - Sécurité
- Code binaire des nombres - Guide
- Comment générer un qr code - Guide
- Nombres faciles - Télécharger - Outils professionnels
- Citez un des logiciels lui permettant de faire des calculs sur des tableaux de nombres (tableur). ✓ - Forum LibreOffice / OpenOffice
1 réponse
Bonjour
cette question est posée régulièrement, en cherchant un peu tu aurais trouvé.
Une solution (qui est valable pour des nombres, des choux, des patates etc...)
Tu commences par initialiser la collection des objets à "tirer". Cette collection doit être d'un type modulable (pas un tableau, la List<T> convient parfaitement), on va appeler cette collection "possibles"
Ensuite tu fais une boucle Do....While(il reste quelque chose dans possibles)
Dans cette boucle tu fais un random entre 0 et le nombre d'objets dans possible -1. Ce random sera l'index dans possible de l'objet tiré.
Aussitôt tu enlèves cet objet de possibles et ainsi tu ne pourras pas le tirer 2 fois.
Quand j'étais petit, la mer Morte n'était que malade.
George Burns
cette question est posée régulièrement, en cherchant un peu tu aurais trouvé.
Une solution (qui est valable pour des nombres, des choux, des patates etc...)
Tu commences par initialiser la collection des objets à "tirer". Cette collection doit être d'un type modulable (pas un tableau, la List<T> convient parfaitement), on va appeler cette collection "possibles"
Ensuite tu fais une boucle Do....While(il reste quelque chose dans possibles)
Dans cette boucle tu fais un random entre 0 et le nombre d'objets dans possible -1. Ce random sera l'index dans possible de l'objet tiré.
Aussitôt tu enlèves cet objet de possibles et ainsi tu ne pourras pas le tirer 2 fois.
Quand j'étais petit, la mer Morte n'était que malade.
George Burns
Mais est-ce que tu expliquer un peu avec un petit bout de code c# .
MERCI.
je continue de chercher.