void battle()
{
cout << "Выберите зону атаки. 1 - голова. 2 - корпус. 3 - ноги." << endl;
wchar_t a;
wcin >> a;
if (a < 48 or a > 51)
{
while (a < 48 or a > 51)
{
cout << "Введено некорректное число!" << endl;
wcin >> a;
}
}
else
{
cout << "!";
}
} Код рабочий, проверяет на наличие в переменной чего угодно кроме цифр 1, 2, 3.
Всё работает, но если ввести более 1 цифры, то он будет писать "Введено некорректное число!" для каждой цифры. Как исправить?
{
cout << "Выберите зону атаки. 1 - голова. 2 - корпус. 3 - ноги." << endl;
wchar_t a;
wcin >> a;
if (a < 48 or a > 51)
{
while (a < 48 or a > 51)
{
cout << "Введено некорректное число!" << endl;
wcin >> a;
}
}
else
{
cout << "!";
}
} Код рабочий, проверяет на наличие в переменной чего угодно кроме цифр 1, 2, 3.
Всё работает, но если ввести более 1 цифры, то он будет писать "Введено некорректное число!" для каждой цифры. Как исправить?