Поделитесь своими знаниями, ответьте на вопрос:
Паскаль. Написать программу, в которой выполняются следующие действия: с клавиатуры вводится первое число; с клавиатуры вводится второе число; вводится слово, обозначающее операцию (либо “direct”, либо “undirect”); в том случае, когда вводится слово “direct”, на экран выводится результат равный частному от деления первого числа на второе (если второе число равно 0, выводится только сообщение «деление на 0»); в том случае, когда вводится слово “undirect”, на экран выводится результат равный частному от деления второго числа на первое (если первое число равно 0, выводится только сообщение «деление на 0» в том случае, когда вводится другое слово (не “direct” и не “undirect”), на экран выводится только сообщение «ошибка».
или МНОКЛП, или МЛОКНП, или задание не поддаётся решению даже если допускать наличие в нем некритических ошибок
Объяснение:
Видимо, Вася и Петя именно играли в шпионов и даже не представляют, чтоб будет, если добавить в таким образом кодируемый текст хотя бы один лишний символ
Если мы пересчитаем общую длину всех символов (К - 3сим, Л - 2сим., ...), то окажется, что там 11 символов. В шифротексте их 12.
"Совпадение? Не думаю"))
Заметим также, что число плюсов и тильд совпадает, а число @ отличается на один.
Для начала просто попробуем исключить одну из них.
Учитывая, что всего их четыре, но две стоят подряд и их исключение принципиально не влияет на результат... ну что же, поехали.
1) + @ ~ ++ @ + @ + ~ ~
2) + @ @ ~ + + + @ + ~ ~
3) + @ @ ~ + + @ + + ~ ~
1) Варианты интерпретации первых символов:
+ @~+ ... (ОН...)
[email protected] ~ ... (МП...)
[email protected] ~+ ... (МЛ...)
Ну что ж, три не тридцать три, хотя " " уже вряд ли получится.
Кроме того, у нас есть проблема с тильдами. Дело в том, что комбинацию ~~(конец строки) может образовать только буква П в конце с какой-то буквой, у которой тильда тоже в конце. И это противоречие.
Поскольку обычно олимпиадные задания составляются так, чтобы максимально запутать и сбить с толку, то обратим своё внимание на коды @~+ и ~+. Тут мы имеем строку, содержащую @,+,~, но порядок двух букв перепутан.
Поэтому сделаем второе допущение, что изначальная кодировка правильная, а вот в сообщении произошла досадная путаница с порядком: обменяем местами последний плюс с предпоследней тильдой.
1.1) Итак, остается + @ + @ ~ + ~.
ОН... а тут как ни интепретируй, получится, что нужно второе одиночное О.
1.2) + + @ + @ ~ + ~
МП тоже бесперспективно, так как нам ещё как-то надо оттрактовать появление тильды в конце, что сделать без П (и привлечения доп.допущений) невозможно
1.3) Снова + @ + @ ~ + ~, но запрещены к использованию другие буквы.
МЛОКНП. Не очень осмысленный текст, но хотя бы без противоречий. Запомним как вариант (худший, но вариант).
2) + @ @ ~ + + + @ ~ + ~. Вычеркнули другую @.
Все варианты интерпретации обязаны будут выстраиваться вокруг О в середине, Л или Н слева от О и М справа от О (иных получить третий + сразу перед @ просто нет, ну, без повторений О)
Воспользуемся этим.
[email protected]@ЛОМ+~~
[email protected]НОМ+~~
В случае с Л получили нелепость (@ остаётся как неприкаянная).
Что касается второго, то тоже чепуха (М использовано, и без него там никак).
3) + @ @ ~ + + @ + ~ + ~. На тебя осталась вся надежда, не подведи...
+ @ @ ~ + + @ + ~ + ~
"Проблемным" выглядит кусочек последнего повторения: + ~ + ~.
Воспользуемся этим.
В середине куска может стоять только Л, в конце только П, а начало - это любая буква, заканчивающаяся на +
[email protected]@[email protected]+ЛП
Единственная оставшаяся тильда принадлежит @~+ (Н):
[email protected]Н[email protected]+ЛП
МНОКЛП