#include
#include
// Предполагаем, что класс SecretClass уже определен где-то в подключаемых библиотеках
class SecretClass {
private:
std::string GetRule() const;
protected:
bool CheckMessage(const std::string& message) const;
};
// Наследуемся от SecretClass
class MessageChecker : public SecretClass {
public:
// Метод для проверки сообщения
bool IsMessageValid(const std::string& message) {
return CheckMessage(message);
}
};
int main() {
std::string message;
std::getline(std::cin, message); // Читаем сообщение из стандартного ввода
MessageChecker checker;
if (checker.IsMessageValid(message)) {
std::cout << 1 << std::endl; // Сообщение прошло проверку
} else {
std::cout << 0 << std::endl; // Сообщение не прошло проверку
}
return 0;
}
#include
#include
// Фиктивная реализация SecretClass для компиляции
class SecretClass {
private:
std::string GetRule() const {
return "dummy rule";
}
protected:
bool CheckMessage(const std::string& message) const {
// Простая проверка, чтобы код компилировался
return message.find("badword") == std::string::npos;
}
};
// Создаем производный класс от SecretClass
class MessageChecker : public SecretClass {
public:
bool IsMessageValid(const std::string& message) const {
return CheckMessage(message);
}
};
int main() {
std::string message;
std::getline(std::cin, message);
MessageChecker checker;
if (checker.IsMessageValid(message)) {
std::cout << "1\n";
} else {
std::cout << "0\n";
}
return 0;
}
Ошибок в моем коде нету
У вас есть сервис, в котором люди могут отправлять друг другу сообщения. Чтобы ваше приложение
получало меньше жалоб, вы решили добавить в него логику проверки текста сообщений. Например,
запрещены оскробления или нецензурная лексика. И был написан класс, который проверяет по
сообщению, корректный ли текст у этого сообщения.
К сожалению, вы потеряли доступ к коду этого класса, однако точно помните, что класс объявляли
таким образом:
class SecretClass {
private:
std::string GetRule() const;
protected:
bool CheckMessage(const std::string& message) const;
};
где GetRule возвращает строку, в которой прописаны все правила проверки сообщений, а
CheckMessage по сообщению проверяет, проходит ли оно проверку.
У вас совсем нет времени искать исходный код класса, ведь сообщения уже начали поступать, и их
уже нужно проверять на корректность...
Задача
На вход вашей программе подается одна единственная строка -- текст сообщения
Необходимо вывести 1, если сообщение проходит проверку, и 0 иначе
Гарантируется, что в тестирующей системе к вашему коду будет подключена реализация класса SecretClass
В систему отправляйте весь необходимый для работы вашей программы код, включая функцию main, в которой и будет написан ввод и вывод данных.