× Aidez la recherche contre le COVID-19 avec votre ordi ! Rejoignez l'équipe PC Astuces Folding@home
 > Tous les forums > Forum Autres langages
 [java] Simplification code
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
BxG
  Posté le 12/12/2008 @ 23:10 
Aller en bas de la page 
Astucien

Bonsoir a tous,

Alors voila je souhaite avoir des valeurs différente entre 1 et 8, voici mon code:

int a = (int) (Math.random() * 8 + 1);
int b;
int c;
int d;
int e;
int f;
int g;
int h;

do{ b = (int) (Math.random() * 8 + 1); }while(a == b);
do{ c = (int) (Math.random() * 8 + 1); }while(c == a || c == b);
do{ d = (int) (Math.random() * 8 + 1); }while(d == a || d == b || d == c);
do{ e = (int) (Math.random() * 8 + 1); }while(e == a || e == b || e == c || e == d);
do{ f = (int) (Math.random() * 8 + 1); }while(f == a || f == b || f == c || f == d || f == e);
do{ g = (int) (Math.random() * 8 + 1); }while(g == a || g == b || g == c || g == d || g == e || g == f);
do{ h = (int) (Math.random() * 8 + 1); }while(h == a || h == b || h == c || h == d || h == e || h == f || h ==g);

Je ne sais pas comment faire pour le simplifier, si vous avez une idée

Merci d'avance

Publicité
fennec.
 Posté le 16/12/2008 à 13:49 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour,

si je comprend bien tu dois avoir 8 nombres compris entre 1 et 8

int [] nbr = new int [8];

for (int i=0;i<7;i++)

nbr[i] = (int) (Math.random() * 8 + 1);

va voir ce site

http://java.developpez.com/cours/

si tu ne le connais pas, tu trouvera beaucoup de chose pour bien débuter en java

bonne lecture



Modifié par fennec. le 16/12/2008 13:52
BxG
 Posté le 17/12/2008 à 08:13 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Euh oui je dois avoir 8 nombre compris entre 1 et 8 mais tous différents, d'ou ce code un peu chargé :

do{ b = (int) (Math.random() * 8 + 1); }while(a == b);
do{ c = (int) (Math.random() * 8 + 1); }while(c == a || c == b);
do{ d = (int) (Math.random() * 8 + 1); }while(d == a || d == b || d == c);
do{ e = (int) (Math.random() * 8 + 1); }while(e == a || e == b || e == c || e == d);
do{ f = (int) (Math.random() * 8 + 1); }while(f == a || f == b || f == c || f == d || f == e);
do{ g = (int) (Math.random() * 8 + 1); }while(g == a || g == b || g == c || g == d || g == e || g == f);
do{ h = (int) (Math.random() * 8 + 1); }while(h == a || h == b || h == c || h == d || h == e || h == f || h ==g);

fennec.
 Posté le 17/12/2008 à 13:10 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour,

pour les avoir tous différent

a chaque fois que ton random te donne un nombre tu doi faire une boucle

sur ton tableau (du moins tous ce qui a déjà été rempli) et refaire un random

si le nombre a déjà été pris



Modifié par fennec. le 17/12/2008 13:12
Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
38,90 €Microsoft Office 2019 Professional Plus à 38,90 €
Valable jusqu'au 22 Octobre

Le vendeur sérieux LicenSE-ONLine propose sur Amazon la clé d'activation légale pour Microsoft Office Professionnel 2019 Plus en français à 38,90 €. Cette clé livrée par email vous permettra d'activer Microsoft Office Professionnel 2019 Plus légalement et vous permettra ainsi d'utiliser autant de temps que vous voulez (il s'agit de la version complète et pas d'un abonnement) Word,Excel, PowerPoint, OneNote, Outlook, Publisher et Access 2019 sur un PC. La clé sera à activer sur Office.com où vous pourrez ensuite télécharger toute la suite bureautique. Pour mémoire, Microsoft Office Professionnel 2019 nécessite Windows 10. Pour plus d'info sur la procédure, n'hésitez pas à jeter un oeil à notre dossier pratique Acheter une clé OEM d'Office 2019 et l'installer.


> Voir l'offre
55 €Microphone USB Bird UM1 à 55 €
Valable jusqu'au 21 Octobre

Amazon fait une vente flash sur le Microphone USB Bird UM1 qui passe à 55 € alors qu'on le trouve ailleurs à partir de 69 €. La livraison est gratuite. Le Bird UM1 est un micro de studio d'excellente qualité avec interface USB intégrée. C'est une solution idéale et tout-en-un qui évite d'avoir à acheter un préampli ou une interface audio supplémentaire.  Idéal pour le studio, YouTube ou l'animation de votre blog.


> Voir l'offre
GratuitJeu PC Rocket League gratuit + bon d'achat de 10 €
Valable jusqu'au 27 Octobre

Epic Game Store offre actuellement le jeu PC Rocket League. Rocket League est un jeu hybride mêlant jeu de football d'arcade et carnage à quatre roues dans d'intenses rencontres à la jouabilité intuitive basée sur la physique. De plus, si vous téléchargez le jeu avant le 23 Octobre, Epic vous offre un bon de 10 € valable sur son catalogue pour un achat de plus de 14,99 € avant le 1er Novembre.


> Voir l'offre

Sujets relatifs
parametrage du code java pour imprimer
Requete SQL ou code java
Classer une arraylist (java)
Ameliorer le Main "Java" avec les fonctions & procédures
Rafraichir un tableau en java
Calcul du jour d'après - - > java
encore java
Filter un fichier CSV en Java
java error
java 9
Plus de sujets relatifs à [java] Simplification code
 > Tous les forums > Forum Autres langages