Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    12

    [java]generatore numeri gaussiani

    Ciao a tutti, avrei assolutamente bisogno di una classe che mi permette di generare dei numeri che appartengono ad una gaussiana. Ho trovato il metodo r.nextGaussian(); dell'oggetto random ma con questo posso solo avere valori di una gaussiana standardizzata, a me serve poter inserire io media e varianza della gaussiana ed ottenere i valori.
    Se qualcuno sa come fare vi prego rispondeteeeeeeeeeeeeeee!!!!!

    grazieeeeee

    ESEMPIO

    import java.util.Random;

    public class gaussiana {

    /**
    * @param args
    */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    Random r=new Random();
    r.nextGaussian();
    for(int i=0;i<20;i++)
    System.out.println(r.nextGaussian());
    }

    }

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: [java]generatore numeri gaussiani

    Originariamente inviato da kicchy
    Ciao a tutti, avrei assolutamente bisogno di una classe che mi permette di generare dei numeri che appartengono ad una gaussiana. Ho trovato il metodo r.nextGaussian(); dell'oggetto random ma con questo posso solo avere valori di una gaussiana standardizzata, a me serve poter inserire io media e varianza della gaussiana ed ottenere i valori.
    Se qualcuno sa come fare vi prego rispondeteeeeeeeeeeeeeee!!!!!
    Ho la vaga idea che dovrai fare tu un metodo apposito per ottenere i numeri con le caratteristiche che hai detto. Su questo però non saprei aiutarti .... sono già abbastanza arruginito in matematica che metà basta .....

    Comunque, come aiuto, posso dirti che nella documentazione javadoc del metodo nextGaussian() di Random, viene riportato il pezzo di codice implementato nel metodo. Parti magari da quello e vedi cosa devi modificare.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    12
    ok grazie provo subito!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    12
    synchronized public double nextGaussian(boolean haveNextNextGaussian) {
    if (haveNextNextGaussian) {
    haveNextNextGaussian = false;
    return nextNextGaussian;
    } else {
    double v1, v2, s;
    do {
    v1 = 2 * nextDouble() - 1; // between -1.0 and 1.0
    v2 = 2 * nextDouble() - 1; // between -1.0 and 1.0
    s = v1 * v1 + v2 * v2;
    } while (s >= 1 || s == 0);
    double multiplier = Math.sqrt(-2 * Math.log(s)/s);
    nextNextGaussian = v2 * multiplier;
    haveNextNextGaussian = true;
    return v1 * multiplier;
    }
    }
    }

    ho tentato ma ... non è che si capisca molto, anche io di mate nn ricordo molte cose ... qlcno sa aiutarmi??? è ugente!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.