12 mai 2014 · 2 min de lecture
Au cours d’un développement, on peut être amené à tirer au sort des données.
Voici une fonction Java pour tirer au sort un nombre compris entre min et max :
int pif(int min,int max) {
Random rand=new Random();
return rand.nextInt((max - min) + 1) + min;
}
Si vous appelez cette fonction avec par exemple min=5 et max=10 comme ceci :
int a = pif(5,10);
Vous obtiendrez dans la variable “a” un nombre au hasard compris entre 5 et 10 inclus.
Maintenant si on veut aller plus loin…
Par exemple, vous avez 10 boules de loto. Vous voulez effectuer un tirage aléatoire de 3 boules. Si vous appelez trois fois de suite la fonction précédente, elle pourra vous sortir plusieurs fois le même numéro ! Alors on fait comment dans ce cas ?
Pour moi la meilleure solution consiste à simuler la réalité :
Je reprends les points énumérés ci-dessus en version informatique :
Vous trouverez sur GitHub un exemple de code source en Java pour tirer des nombres aléatoires sans répétition.