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

avec Java Discussion :

graine dans un générateur ?


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 19
    Par défaut graine dans un générateur ?
    Bonjour,
    J'ai une méthode à écrire, c'est en fait un générateur qui utilise des nombres aléatoires. Et dans les paramètres, je suis censée mettre une graine mais la graine ne me dit rien du tout cad je ne sais pas ce que c'est et à quoi elle sert?

    Aides svp

  2. #2
    Membre chevronné
    Profil pro
    Développeur Java
    Inscrit en
    Novembre 2007
    Messages
    301
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2007
    Messages : 301
    Par défaut
    La valeur initiale qui doit être utilisé pour initialiser le générateur pseudo-aléatoire. En C++, on utilisait souvent le retour de la méthode time(0).

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 19
    Par défaut
    Citation Envoyé par darkxan Voir le message
    La valeur initiale qui doit être utilisé pour initialiser le générateur pseudo-aléatoire.
    J'ai pas compris grand-chose :p . Il est obligatoire? Dans mon code, je l'utilise comment?

  4. #4
    Membre chevronné
    Profil pro
    Développeur Java
    Inscrit en
    Novembre 2007
    Messages
    301
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Novembre 2007
    Messages : 301
    Par défaut
    Si tu n'as pas compris, cherche et documente toi. Je ne vais pas faire un cours magistral sur la génération de nombres pseudo-aléatoire dans le forum Java...

    Si je prends un cas concret de générateur se basant sur les congruences :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    X(n+1) = (a * X(n) + c) mod m.
    X(n+1) étant le nombre aléatoire. Le problème est qu'il nous faut un X(0) (la graine) pour pouvoir initialiser le générateur et donc obtenir X(1).

    Idéalement, il faudrait qu'il soit aléatoire. C'est là qu'est le problème puisque on cherche justement à créer des nombres pseudo aléatoires. Donc en C++, on utilise souvent le retour la fonction time comme graine.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 19
    Par défaut
    Citation Envoyé par darkxan Voir le message
    Si tu n'as pas compris, cherche et documente toi. Je ne vais pas faire un cours magistral sur la génération de nombres pseudo-aléatoire dans le forum Java...
    Rassure toi, c'est parce que j'ai pas trouvé grand-chose qui pourrait me permettre de le comprendre que j'ai posté sur le forum. Donc en espérant que ceux qui en ont une idée m'aident.

    Je crois quand même que ton exemple est mieux qu'un cours magistral lol, car je crois voir de quoi il s'agit.

  6. #6
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    Si tu veux générer des nombres pseudo aléatoires en java sans t'emmerder avec la graine, utilise la méthode java.lang.Math.random(). Sinon, comme mentionné, on utilise souvent l'heure en millisecondes comme graine. Attention cependant en faisant çà, si tu initialise plusieurs générateurs à partir du temps en millisecondes et que tu le fait presque en même temps, genre avec ce code ci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Random random1 = new Random(System.currentTimeMillis());
    Random random2 = new Random(System.currentTimeMillis());
    Random random3 = new Random(System.currentTimeMillis());
    Tu coure le risque que tes 3 générateurs fournissent exactement la même séquence.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/01/2008, 14h31
  2. Réponses: 2
    Dernier message: 08/06/2007, 09h27
  3. utiliser ajax dans un générateur
    Par cortex024 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 05/06/2007, 16h27
  4. Condition "si" dans le générateur d'expression
    Par Guizbizet dans le forum Access
    Réponses: 4
    Dernier message: 21/12/2006, 12h52
  5. Critère dans un Générateur de requète
    Par Mario Rousson dans le forum Access
    Réponses: 1
    Dernier message: 09/02/2006, 15h29

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