Ключевой концепцией, которую следует иметь в виду, является то, что входная переменная может иметь только одно значение во времени. В случае вашего кода вы хотите:
input
не равно 1, а input
не равно 2, . Чтобы продолжить цикл для указанных выше двух случаев, вы можете комбинировать логические операторы для достижения этого.
В частности, вы можете использовать логические операторы !=
и &&
, чтобы сказать:
продолжить цикл, когда вход не равен 1 или 2
blockquote>То же самое, что сказать:
продолжить цикл, когда вход не 1 и не 2
blockquote>Это может можно добиться, обновив условие цикла в коде следующим образом:
do { cin>>input; switch(input) { case 1: { cout<<"OK"<<endl; break; } case 2: { cout<<"what"<<endl; break; } default: { cout<<"INVALID INPUT\n"<<endl; break; } } // Only allow the loop to continue if input is something other than 1 // or 2, ie not 1 and not 2 } while(input!=1 && input!=2);