Цель этого кода golf - создать интерпретатор для языка программирования HQ9 +.
В этом языке программирования есть 4 команды:
- H - печатает "Привет, мир!"
- Q - печатает исходный код программы
- 9 - печатает текст песни "99 бутылок пива"
- + - увеличивает аккумулятор
Правила:
- Поскольку аккумулятор не определен, вы можете игнорировать команду +
- Ваша программа должна запросить ввод (этот ввод будет исходным кодом) или исходный код читается из файла
- Вы не можете помещать текст «99 бутылок пива» в файл и читать текст из файла.
- Вам не разрешается использовать алгоритм сжатия, такой как GZip или BZip, для сжатия текста песни: вы должны создать свой собственный алгоритм сжатия. Это не должен быть сложный алгоритм, но постарайтесь максимально сжать текст (помните: это код-гольф, код с наименьшим количеством байтов выигрывает)
- Если исходный код содержит символ, который не является H , Q , 9 или + , выведите «Исходный код содержит недопустимые символы» перед выполнением любых команд! Это означает, что, если исходный код,
H1например, не выводитсяHello, world!до выводаSource code contains invalid characters. Нет, сразу выводSource code contains invalid characters - Если ваш переводчик принимает символы как в верхнем, так и в нижнем регистре, то вы получите -8 к вашему количеству символов
Удачи!