Sélection aléatoire en java

Fermé
ziedzico Messages postés 393 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 12 avril 2014 - 8 févr. 2010 à 22:37
ziedzico Messages postés 393 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 12 avril 2014 - 9 févr. 2010 à 01:13
Bonjour, d'abord voici mon code qui affiche 9 entiers compris de 1 à 9 aléatoirement
------------------------------------------------------------------------------------------------
package testrand;

import java.util.*;

public class Main {

public static void main(String args[]) {

for(int c=1;c<10;c++){
Random rand = new Random();
int x = rand.nextInt(9)+1;
System.out.print(x+" ");
}
}
}
--------------------------------------------------------------------------------------------------
en fait je veux afficher tous les entiers de 1 à 9 sans double de façon aléatoire
merci d'avance de m'aider
A voir également:

5 réponses

Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 661
9 févr. 2010 à 00:00
pour cela l'idée est de prendre un tableau avec ces entiers, puis de mélanger le tableau (par exemple en faisant une boucle qui échange deux valeurs au hasard du tableau à chaque fois, et cela 100 fois par exemple.
0
ziedzico Messages postés 393 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 12 avril 2014 112
9 févr. 2010 à 00:22
merci , problème résolu avec collections.shuffle() qui mélange une liste d'objets
voila ce code:

package testrand;
import java.util.*;
public class collection {
public static void main(String args[]) {
ArrayList l = new ArrayList();
for (int i = 1; i < 10; i++)
l.add(i);
Collections.shuffle(l);
System.out.println(l);
}
}

reste a voir toutes les combinaisons .. :-\
0
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 661
9 févr. 2010 à 00:26
ah oui, shuffle c'est très bien :) . J'ai cru que tu n'avais pas le droit d'utiliser ça (exercice d'école).

pour faire toutes les combinaisons, il faut faire échanges d'un tableau de base 1 2 3 4 5 6 7 8 9 méthodiquement (ou récursivement)
0
ziedzico Messages postés 393 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 12 avril 2014 112
9 févr. 2010 à 00:32
merci , c'est une méthode la translation mais ça prend du temps et je veux laisser le hasard qui fait l'ordre de ces combinaisons.
0
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 661
9 févr. 2010 à 01:09
si tu laisses le hasard, alors tu as une trs grande probabilité d'avoir beaucoup de doublons, et donc de prendre bien plus de temps que si tu ne les faisais méthodiquement.

Tu disais avant que tu voulais les avoir toutes, non ? Dans quel but ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ziedzico Messages postés 393 Date d'inscription mercredi 5 mars 2008 Statut Membre Dernière intervention 12 avril 2014 112
9 févr. 2010 à 01:13
c pour remplir la grille sudoku dès le début mais au hasard si ce n'est pas la façon d'en résoudre
merci pour ton aide
0