int[] r = new int[1000];
ExponentialDistribution exp = new ExponentialDistribution(4.0);
for(int i = 1; i <r.length; i++){
r[i] = (int)exp.sample() + 1 + r[i-1];
}
Le code ci-dessus remplit array [r] de r [0] = 0 à r [999] = 4527. Ceci est le résultat d'une exécution aléatoire . Si r.length est augmenté à 2000, le dernier élément r [1999] augmente de 8963. J'essaye de trouver la solution pour remplir le tableau [r] dans la gamme 0 - 5000. Même si r.length est augmenté, le tableau devrait Dans ce cas, si r [999] < = 5000, alors r [1999] devrait également être < = 5000.Remplissage d'un tableau avec des nombres aléatoires dans une plage spécifique en utilisant une distribution exponentielle
Dites, r.length représente le nombre total. d'événements et chaque élément de tableau r représente l'heure à laquelle l'événement se produit. Le temps total est de 5000 unités. Le motif est que le premier événement se produit à l'instant 0 et dure à l'instant < = 5000 même si r.length est augmenté ou diminué et que le temps d'inter-événement de deux événements doit être ajusté en conséquence.
Merci beaucoup
Veuillez prendre le temps de poser une question la prochaine fois –
@ScaryWombat Est-ce que quelque chose n'est pas compréhensible? –
vous ne posez pas vraiment de question. Pour l'enregistrement d'où vient la classe 'ExponentialDistribution'? Une solution simple est si le nombre ne répond pas à vos besoins, alors ne l'utilisez pas, cherchez un autre numéro. Aussi, si vous ajoutez «i» (l'index) alors que l'indice augmente, le nombre –