I'm developing a Java application that requires randomly generated numbers with specific probabilities. These floats must range from 0 to 100, with 0 and 100 having the lowest probability of being generated and 50 (the mean) having the highest. Therefore, the farther away from the mean, the rarer the number.
P.S. Sorry if the question is not very clear but I'm not native and I'm still learning English...
Perhaps you could use Random's nextGaussian() method which generates a random number based on the default mean of 0.0 and standard deviation of 1.0. In your case, I believe the mean would be 50, and you could calculate the standard deviation so that it fits your requirements. You could use this link: Java normal distribution in order to help answer your question.
Docs for Random.nextGaussian().
I would also suggest looking into normal distributions because I believe the match what you are asking for.
Hope that helped!