0
votes

Java Loop va 4 fois pour une raison quelconque

Donc, j'ai cette affectation où j'ai besoin de boucler l'entrée de l'utilisateur 6 fois. La boucle, après avoir fini, bouclée à nouveau pendant 3 fois de plus. Je n'ai pas ajouté A pour Lop avant de cela, je ne sais pas comment le gérer.

Voici le code de la méthode: xxx

i plis i pour voir l'index et cela va 0 à 5 puis retourne sur 0 . J'ai manqué d'idées, aide s'il vous plaît.


2 commentaires

Veuillez nous éclairer ce que vous avez entré, lorsque l'application vous a demandé d'entrer un numéro (peut-être une capture d'écran de l'exécution de l'application?)


Le code me semble bien. Ma seule hypothèse serait que vous appelez la méthode à deux endroits.


3 Réponses :


0
votes

Il semble que votre Playnums ait plus de 6. Essayez

public static int[] getPlayerNumbers(int[] playNums) {
Scanner input = new Scanner(System.in);

for (int i = 0; i < 6; i++) {
    System.out.println("Please enter numbers from 1-9: " + i);
    playNums[i] = input.nextInt();

    while (playNums[i] < 1 || playNums[i] > 9) {
        System.out.println("Invlaid input. Please only enter 1-9. ");
        playNums[i] = input.nextInt();
    }
}

return playNums;}


0 commentaires

0
votes

J'ai testé votre code et cela semble fonctionner pour moi. Les playsnums contiennent certainement plus de 6 valeurs.

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        int[] playNums ={1, 2, 3, 4, 5, 6};
        getPlayerNumbers(playNums);
        for (int playNum: playNums) {
            System.out.println(playNum);
        }
    }

    public static int[] getPlayerNumbers(int[] playNums)
    {
        Scanner input = new Scanner(System.in);

        for (int i = 0; i < playNums.length; i++) {
            System.out.println("Please enter numbers from 1-9: " + i);
            playNums[i] = input.nextInt();
            while (playNums[i] < 1 || playNums[i] > 9) {
                System.out.println("Invalid input. Please only enter 1-9. ");
                playNums[i] = input.nextInt();
            }
        }
        return playNums;
    }
}


0 commentaires

0
votes

Essayez ceci xxx


0 commentaires