Вы должны написать программу, которая выполняет одно из следующих действий.
- Только отображает «Hello World» больше ничего не делает
- Выход и ничего больше (без вывода, без ошибок.)
- Занимает одну строку ввода, анализирует ее как целое число, отображает первое, что много простых чисел (или выдает приятную ошибку, если задан ввод, который не может быть проанализирован как целое число, или если он меньше 0.)
- Имея одну строку ввода, он анализирует его на наличие символа акции и проверяет в режиме онлайн текущую стоимость акции и ее изменение.
Подвох, не должно быть видно, какую функцию он выполняет. А именно, для тех, кто смотрит на ваш код, не должно быть очевидно, какую функцию он будет выполнять. Кроме того, она может выполнять и иметь возможность выполнять только одну функцию (она не может выбирать и выбирать.) Насколько хороша программа, определяется тем, насколько неуверенно кто-то смотрит на нее, какова ее функция, а также насколько хорошо она знакома. человек с этим языком.
БОНУС: Если вы умным способом сделаете это, хотя для любого одного компилятора / интерпретатора и платформы программа также будет выполнять одну и ту же функцию, для разных компиляторов / интерпретаторов или платформ, она будет выполнять другую функцию. Этот бонус может быть получен только в том случае, если он сделан умно.
БОНУС: Если ваша программа содержит только код, способный выполнять одну функцию (ничего не сохранять, поскольку пустой код способен на это), и невозможно выполнить простое изменение, не связанное с функцией, чтобы позволить ей выполнять другую функцию. Например: если вы сделали
obfuscatedBool = 1g8uhad'l8fygrcetdu8y4fd/,.oe87fy4d --Magic
if obfuscatedBool: print "Hello World"
Не будет считаться, что obfuscatedBool можно сделать True или False, чтобы он печатал «Hello World» или ничего не делал соответственно.
Бонус бесконечности: если вы реализуете оба бонуса одновременно, вы волшебны.
ОТРИЦАТЕЛЬНЫЙ БОНУС: Использование библиотек с определенными способностями для выполнения функций.
Избиратели, примите во внимание бонусы, потому что победит программа с наибольшим количеством голосов!
Примечание. Если вы говорите, что делает ваша программа, обязательно используйте синтаксис спойлера!
Ответы:
Пробелы / Brainfuck / Python
Wikipedia: Пробелы (язык программирования)
Онлайн переводчик пробелов для проверки ответа
Онлайн переводчик Brainfuck для проверки ответа
источник
JS
источник
(o^_^o)
.Сборка MS-DOS x86
Поскольку он уже не запутан в процессе сборки, давайте сделаем его еще хуже! Это ДОЛЖНО работать с любым ассемблером, который может собираться в COM-файл, но я тестировал только с TASM для DOS
tasm obfuse
,tlink /t obfuse
источник
С
источник
LOLCODE
Этот язык уже запутан сам по себе. Вот мой код:
источник
JavaScript (ES6)
Используя прагму,
black magic
чтобы раскрыть истинную силу JavaScript:Выход:
Пояснения:
Эта программа на самом деле довольно проста и может быть кратко изложена ниже.
Все остальное, если синтаксический сахар!
Вот аннотированная версия:
источник
КОБОЛ (IBM Enterprise COBOL)
Если будет показано, что почти 100% программистов IBM Mainframe COBOL скажут: «Это даже не программа, которая не будет компилироваться!». Чем больше у них опыта, тем меньше вероятность, что он скомпилирует его (поскольку более старые COBOL для мэйнфреймов были гораздо более строгими).
Затем спросите "если он компилируется, что он делает?" Они сказали бы: «Он не будет компилироваться, но если он это сделает, это вызовет какую-то ошибку, возможно, Language Environment выдаст U4038 или что-то в этом роде».
Удалось его сократить. В программе COBOL есть четыре ПОДРАЗДЕЛЕНИЯ. ИДЕНТИФИКАЦИЯ / ID, ОКРУЖАЮЩАЯ СРЕДА, ДАННЫЕ, ПРОЦЕДУРА. Оказывается, что ПРОЦЕДУРА требует слова РАЗДЕЛЕНИЕ, а другие нет. Угадайте, какой из них я удалил первым, и предположил, что другие слова DIVISION были обязательными ... дальнейшее недоумение показало обратное. Жаль, что это не Гольф. Двухсимвольная программа на языке COBOL ...
источник
Java, C ++ - 11 1 Бонус востребован
Не уверен, получу ли я оба бонуса, но смешивать 2 языка программирования уже было головной болью ...
источник
Python - 1 бонус, востребованный
В Python 2,
1
деленное на2
равных0
.1
деление на0
не может быть оценено и выбрасывает деление на ноль ошибок. Ничего не печатается, и все равно программа завершается без ошибок.В Python 3
1/2
=>0.5
и1/0.5
=>2.0
. Нет ошибки.Hello, World!
печатается.источник
hello world
каким-то образом, и все будет в порядке.партия
Я не знаю, что запутанное считается замаскированным, хотя определенно есть некоторые аспекты обфускации.
источник
%%%%
xDРубин - или это пробел?
Ну, кто-нибудь может угадать, что я делаю?
Небольшой совет: если вы хотите запустить его, пожалуйста, скопируйте весь код в поле кода;)Обновление: копирование кода не работает из-за проблем, связанных с Unicode? Работает над онлайн-версией, а затем копирует код! Остерегайтесь пробелов;)
Онлайн версия
Выход:
Объяснение:
method_missing
вызывается, что сохраняет длины кусковat_exit
символах образуются путем объединения цифр и т. д., и выражение оценивается, в этом случаеputs 'Hello world!'
источник
вперед
Давайте создадим новую ЗАДАЧУ.
источник
PHP:
$ words = array ('Heart', 'eagle', 'low', 'lonely', 'over', 'SPACE', 'Window', 'optimus', 'rotting', 'list', 'done', ' !сделанный');источник
Brainfuck
объяснение
источник
C ++ 11
Я требую бонус за зависимость от компилятора - например, он будет демонстрировать различное поведение между gcc 4.8 и gcc 4.9.
Объяснение зависимости компилятора:
Общее объяснение поведения:
источник
Delphi
Не уверен, что это считается, но я расскажу вам, как я видел этот вызов.
Я думал написать код, который не будет выполнять то, что вы ожидали.
источник
Haskell
источник
JS
источник
Matlab
Вот код, который может примерно выполнять различные операции, можете ли вы предсказать поток?
Вот подсказка:
источник
Этот делает оба бонуса. Посмотрите на спойлеры в конце, чтобы увидеть, что он делает.
Java / Brainf * ck
Brainfuck
Джава
источник
C 346 символов
Это старая программа, которую я создал 10+ лет назад. Это на самом деле печатает "Привет, мир!" Код использует палиндромные числа в базе 10 и слегка запутан.
О, я почти забыл ... Программа работает только при запуске без аргументов командной строки. Кроме того, если вы запустите его с 11 аргументами командной строки, кажется, что вы входите в бесконечный цикл. 12 хорошо, хотя.
источник
Malbolge
Я бы сказал, что это не может запутаться больше, чем Malbolge;)
источник
баш / ш, питон
Это даст:
когда выполняется с
bash
.Когда тот же код выполняется с
sh
или сbash
в режиме posix, то есть, говоряbash --posix filename
, он не производит никакого вывода.источник
Теперь, согласно комментариям и прочтению, это сделает 1 из 3 вещей.
Однако эта программа не очень хорошо следует своей документации, потому что, что бы вы ей ни давали ... она всегда будет печатать ЧЕТВЕРТУЮ цель, которая ничего не значит.
источник
Javascript
Я даже этого не понимаю
Обратите внимание, что скрипт не мой: первоисточник
источник
[] + [] -> ''
,day() - day() -> 0
. Оттуда это выглядит как получение десятичного представления каждого символа, а затем созданиеString.fromCharCode
над ними.Perl
Это моя первая попытка написать запутанный код. Я надеюсь тебе понравится.
источник
C ++:
источник
Ruby 2.0.0 + 1 бонус
Хорошо, я объясню бонус в спойлере. Но это всего лишь окольный способ напечатать «Hello World!» в рубине.
И вывод:
Какая?
И бонус:
источник
Matlab
Очень простой маленький код, вероятно, можно было бы легко расширить, чтобы сделать его более запутанным, но я оставил его меньше в качестве доказательства принципа, потому что этот подход немного неубедителен. Уверен, что невозможно выяснить результат, не выполнив хотя бы часть кода.
источник
C ++ или C & Bonus № 1
Я требую Бонус № 1.
clang/gcc
противclang++/g++
.С C ++
С C
источник