Random en java
Résolu
Nouyou
Messages postés
51
Statut
Membre
-
Nouyou Messages postés 51 Statut Membre -
Nouyou Messages postés 51 Statut Membre -
bonjour j'ai un problème avec la class Random
je veux afficher des nombres paires compris entre 0 et 14
voici le code que j'ai écrit , à chaque fois il m'affiche 16 , je ne sais pas c'est quoi le problème avec le contrôle de saisie
EDIT :
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
je veux afficher des nombres paires compris entre 0 et 14
voici le code que j'ai écrit , à chaque fois il m'affiche 16 , je ne sais pas c'est quoi le problème avec le contrôle de saisie
Random R=new Random();
int m=14;
do
{
int k=R.nextInt(1);
if(k==0)
m=m+2;
else
m=m-2;
}while((m<0)&&(m>14));
System.out.print(m);
EDIT :
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
2 réponses
-
Bonjour,
La borne que tu passes en paramètre est exclusive. Donc comme tu as mis 1, tu choisis aléatoirement un nombre entre 0 inclus et 1 exclus... donc tu obtiens toujours 0 !
Pourquoi ne pas choisir un nombre aléatoirement entre 0 et 8 ? Tu le multiplies ensuite par 2 pour être sûr qu'il est pair et ça t'évite une boucle maladroite... -
Une bonne idée mais ne marche pas dans mon cas , parceque m est initialiser et je vais à chaque fois ajouter ou soustraire 2 à condition que le m reste toujours dans l'intervalle [0,14]