Цель этого кода 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 к вашему количеству символов
Удачи!