Java, обработка вложенного цикла? - PullRequest
0 голосов
/ 21 июня 2011

Я использую этот код:

int contadorA = 1, contadorB = 1;

while (contadorA <= 5) {
    println ("banking " + contadorA);
    contadorA++;

    while (contadorB <= 3) {
         println ("month " + contadorB);
        contadorB++;
    }
}

код напечатайте это:

банковское дело 1
месяц 1
месяц 2
месяц 3
банковское дело 2
банковское дело 3
банковское дело 4
банковское дело 5

И НУЖНО ЭТО ПЕЧАТЬ ЭТО:

банковское дело 1
месяц 1
месяц 2
месяц3
банковское дело 2
месяц 1
месяц 2
месяц 3
банковское дело 3
месяц 1
месяц 2
месяц 3
банковское дело 4
месяц1
месяц 2
месяц 3
банковский 5
месяц 1
месяц 2
месяц 3

Ответы [ 5 ]

4 голосов
/ 21 июня 2011

Я не буду отправлять код, мои извинения.

Я дам подсказку. Во внутреннем цикле вы не сбрасываете счетчик при входе в него. Это означает, что значение contadorB после выполнения первого внешнего цикла равно 4, и оно никогда больше не войдет во внутренний цикл.

Вот еще один намек. Пройдите по коду в отладчике (и посмотрите значение contadorB), если вы не поняли мою предыдущую подсказку.

0 голосов
/ 21 июня 2011

Этот код укажет на вашу проблему:

int contadorA = 1, contadorB = 1;

while (contadorA <= 5) {
    println ("banking " + contadorA);
    contadorA++;

    while (contadorB <= 3) {
         println ("month " + contadorB);
        contadorB++;
    }
    println ("contadorA: " + contadorA + "\n contadorB: " + contadorB + "\n");
}
0 голосов
/ 21 июня 2011

Вы не сбрасываете второй счетчик внутри цикла.Вам нужно сделать это:

int contadorA = 1, contadorB = 1;

while (contadorA <= 5) {

    println ("banking " + contadorA);
    contadorA++;

    contadorB = 1;
    while (contadorB <= 3) {

    println ("month " + contadorB);
    contadorB++;


    }

}
0 голосов
/ 21 июня 2011

Проверьте значение contadorB в конце второго цикла while.

0 голосов
/ 21 июня 2011

Объявите int contadorB = 1; в первом цикле while, но перед вторым циклом while. Другими словами, вы просто сбрасываете переменную для каждой итерации первого цикла while.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...