while (array[0] !=6 || array[1] != 6 || array[2] != 6);
Это работает нормально, потому что это означает: «хотя одна из трех попыток не равна 6»
, поэтому условие выхода: «все кубики 6»
while (array[0] !=6 && array[1] != 6 && array[2] != 6);
Это не работает, потому что это означает: «хотя ни одна из трех попыток не равна 6»
, поэтому условие выхода: «по крайней мере, один кубик равен 6»
while (array[0]+array[1]+array[2] != 18);
Это работает нормально, потому что означает: «сумма результата кубика равна 18»
, поэтому условие выхода: «все кубики равны 6» (потому что это единственный способ суммировать 18)