while循环嵌套在for循环中不会迭代

时间:2018-02-07 00:38:41

标签: java

我需要输入N这是一些数字,我需要查看它们是否可以除以3.然后我需要显示N我可以显示的数字百分比划分。数字需要从15到62,他们需要循环,直到我每次输入正确的值,但他们不会。相反,他们只是重复for循环而不管我的输入。这是代码:

System.out.println("Enter N number of numbers");
    int N = TextIO.getlnInt();
    int number;
    int counterOfDivisible = 0;

    for(int i = 0; i < N ; i++) {
        do {
            System.out.println("Please enter a number from the 15-62 span");
            number = TextIO.getlnInt();
        } while (number<15 && number>62);

        if(number%3==0)
            counterOfDivisible++;
    }

    System.out.println("% of numbers from the N that can be divided by 3 is " + (counterOfDivisible*100.0)/N + "%");

2 个答案:

答案 0 :(得分:0)

number永远不能同时是<15 >62。想想你的情况。

答案 1 :(得分:0)

谢谢大家的快速回复,第一次来这里。代表我这个相当愚蠢的错误。

这似乎是我瞄准的伎俩。

do {
            System.out.println("Please enter a number from the 15-62 span");
            number = TextIO.getlnInt();
        } while (number < 15 || number > 62);