IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

[Math]Random le mystère


Sujet :

Collection et Stream Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2
    Points : 2
    Points
    2
    Par défaut [Math]Random le mystère
    Bonjour ,

    Voila , je développe un petit programme dans lequel j'ai besoin de tirer une combinaison aléatoire.

    j'ai donc codé ceci

    int combinaison[] = new int [5];
    int i = 0 ;
    double couleur;

    while (i<5)
    {
    Random temp = new Random();

    couleur = temp.nextDouble();
    couleur = couleur*10;

    if (((int)couleur !=0) && ((int)couleur != 9)) {
    combinaison[i] = (int)couleur;
    System.out.println("ramdom number = " + combinaison[i]);
    i++;
    }
    }
    Ce code fonctionne parfaitement dans GEL.

    Par contre , une fois que je copie/colle ce code dans JBuilder , au lieu de me sortir une combinaison semblable à celle qui me sort sous gel (ex : 16453) il me renvoie toujours la même suite de nombre (ex : 11111 ou 88888 ou encore 66666...)

    J'ai changé les versions du JDK dans JBuilder (j'utilise JBuilder 2005) mais ca ne change rien.


    Estce que quelqu'un pourrait m'éclairer sur ce problème ??

    Merci

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 94
    Points : 92
    Points
    92
    Par défaut
    bonsoir,
    je crois que Random génère les nombres aléatoire à partir d'un nombre de base qui est donné par l'horloge interne, si tu réinstancie l'objet Random à chaque passage de boucle while, le nombre de base est toujours le même vu qu'il ne s'est pas écoulé une milliseconde entre le début et la fin de ta boucle, je mettrais donc :
    Random temp = new Random();
    avant le départ de boucle ...
    sans conviction ...
    A+

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    après avoir suivi tes instructions , je lance l'application , je génere une combinaison et la.. CA MARCHE !!

    Merci beaucoup pour ta correction sur mon code !! tu me sauves la vie (ou presque )

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Math / Random] Génération nombre aléatoire compris entre deux bornes
    Par oligig dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 30/06/2013, 17h23
  2. probléme avec le fonction math.random()
    Par dv-2008 dans le forum Débuter avec Java
    Réponses: 7
    Dernier message: 19/03/2008, 20h32
  3. Réponses: 12
    Dernier message: 25/05/2007, 16h28
  4. [Math.Random] StackOverFLowError Exception
    Par michaeljeru dans le forum Langage
    Réponses: 3
    Dernier message: 27/03/2007, 22h39
  5. [FLASH MX2004] Tirage (Math.random) et égalité stricte
    Par cristolb dans le forum ActionScript 1 & ActionScript 2
    Réponses: 8
    Dernier message: 28/04/2006, 11h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo