while(a!=b && c !=b) {
Проблема в том, что ваша логика c закорочена. a != b && c != b
говорит, что вы должны выполнить l oop, если оба эти условия истинны.
Однако, если первое условие ложно, второе не оценивается.
Итак, логически, самое большее, что мы можем утверждать после этого условного завершения, это то, что a == b
.
Если вы хотите убедиться, что l oop продолжается до тех пор, пока любое значений отличаются, вы должны изменить его, чтобы использовать ИЛИ. Таким образом, для l oop до конца, имеет , чтобы быть истинным, что a == b
и c == b
.