Задача понятна. Правило: вывести ПУСК, если в заданной строке присутствуют слова "три" и "два" и при этом присутствуют либо "один", либо "раз". Иначе вывести ОШИБКА. Считать нужно слова как отдельные токены (слова), а не часть больших слов.
Пошаговое решение (понятно любому школьнику):
- Привести строку к нижнему регистру, чтобы сравнения были нечувствительны к регистру.
- Разбить строку на слова. Лучше выделять только русские буквы: использовать разбиение на слова по разделителям и отсеивать знаки препинания. Это можно сделать, например, как слова из последовательностей букв.
- Проверить наличие нужных слов:
- наличие слова "три"
- наличие слова "два"
- наличие слова "один" или наличие слова "раз"
- Если все три условия выполняются (три и два обязательно, а далее либо один, либо раз), вывести ПУСК; иначе вывести ОШИБКА.
Примеры наглядно:
- "три два один" -> ПУСК
- "два три раз" -> ПУСК
- "три два" -> ОШИБКА
- "три два одна" -> ОШИБКА
- "Три, два, один раз!" -> ПУСК
Пояснение по небольшому коду (поможет автоматически проверить любую строку):
Python-подход (пояснение к реализации):
- переводим строку в нижний регистр
- выделяем слова как последовательности кириллицы
- проверяем условия и выводим результат
Пример кода (для локального использования):
import re
def check_line(line):
s = line.lower()
# выделяем слова на кириллице
words = re.findall(r'[а-яё]+', s)
has_three = 'три' in words
has_two = 'два' in words
has_one_or_one = ('один' in words) or ('раз' in words)
return 'ПУСК' if (has_three and has_two and has_one_or_one) else 'ОШИБКА'
примеры
print(check_line("три два один")) # ПУСК
print(check_line("два три раз")) # ПУСК
print(check_line("три два")) # ОШИБКА
print(check_line("три два одна")) # ОШИБКА
print(check_line("Три, два, один раз!")) # ПУСК
Если хочешь, могу проверить конкретную строку, просто пришли текст строки, и я скажу, ПУСК или ОШИБКА, с пояснением, почему так получилось.