Я создаю программу на C ++ для проверки названия книги с помощью функции на c ++. Функция должна возвращать 1, если ввод действителен, и 0, если ввод недействителен. Название книги может содержать только заглавные, строчные буквы, цвет (:), запятую (,) и пробел (не должно быть последовательных пробелов, запятых и двоеточий). Максимальное количество символов в массиве символов - 60.
Я попробовал следующий способ, но не получил желаемого ответа.
const int MAX_BOOK_NAME = 60;
bool isValidBookName(char bookName[MAX_BOOK_NAME])
{
int length = strlen(bookName);
if (length > 59)
{
return false;
}
for (int i = 0; i < 59; i++)
{
if (bookName[i] < 'A' || bookName[i] > 'Z' || bookName[i] < 'a' || bookName[i] > 'z' || bookName[i] != ' ' || bookName[i] != ':' || bookName[i] != ',')
{
return false;
}
}
return true;
}
int main()
{
char arr[60];
cout << "Please Enter Your Book Id : ";
cin.getline(arr, 60);
cout << "Your Entered Name is " << isValidBookName(arr) << endl;
}