Je suis débutante en java et j'aimerais à la fin du code que j'ai posté ci-après réutiliser les valeurs déclarées dans le tab pour les comparer avec la valeur rentrée au clavier par l'utilisateur et reposer la question de rentrer la mise complémentaire en boucle si jamais la saisie de l'utilisateur ne correspond pas exactement avec une des valeurs du tableau. Pourriez-vous m'aider et me proposer une autre solution plus simple si jamais je ne suis pas partie sur une bonne logique?
Merci d'avance
/déclaration du tableau contenant les éléments possible pour miser
Merci pour la réponse :). J'ai essayé le code ci-après dans le while mais ce n'est pas encore ça puisque ça boucle indéfiniment même si je rentre une valeur comprise dans le tableau. N'hésitez pas à me donner d'autres suggestions!
if (miseComp!='N'){
for (i=0; i<tab.length; i++) {
do {
System.out.println("Rentrez la mise complémentaire parmi les éléments suivants : rouge, noir, pair, impair, 1 douzaine, 2ème douzaine, 3ème douzaine, 1ère colonne, 2ème colonne, 3ème colonne ");
Merci pour la réponse :). J'ai essayé le code ci-après dans le while mais ce n'est pas encore ça puisque ça boucle indéfiniment même si je rentre une valeur comprise dans le tableau. N'hésitez pas à me donner d'autres suggestions!
if (miseComp!='N'){
for (i=0; i<tab.length; i++) {
do {
System.out.println("Rentrez la mise complémentaire parmi les éléments suivants : rouge, noir, pair, impair, 1 douzaine, 2ème douzaine, 3ème douzaine, 1ère colonne, 2ème colonne, 3ème colonne ");
String choixMise = sc.nextLine();
}while (!(tab[i].equals(choixMise)));
ça boucle sans arrêt car tu fais une boucle qui commence à i=0, autrement dit tu reste dans ta boucle do{} while(); tant que tu n'as pas rentré la valeur tab[0] (et non pas une valeur quelconque du tableau), or ce n'est pas ce que tu souhaites.
J'aurais procédé différemment en mettant dans ton while une fonction qui renvoie un booléan (renvoie true dés que tu trouves le bon mot, si après avoir tout parcouru le bon mot n'est pas trouvé alors renvoie false) :
do {
////
} while (! appartient(choixMise))
Avec la fonction appartient :
public static boolean appartient (String choixMise) {
J'aurais procédé différemment en mettant dans ton while une fonction qui renvoie un booléan (renvoie true dés que tu trouves le bon mot, si après avoir tout parcouru le bon mot n'est pas trouvé alors renvoie false) :
do {
////
} while (! appartient(choixMise))
Avec la fonction appartient :
public static boolean appartient (String choixMise) {
for (int i = 0; i < tab.length; i++) {
if (choixMise.equals(tab[i]) { return true;}
}
return false;
}
Complètement d'accord avec ce code, si tu réalisé ça, tout devrait fonctionner comme sur des roulettes
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Elodie
Elodie
Elodie