Bạn phải viết một chương trình hoặc chức năng đó, khi đưa ra một không rỗng chuỗi S của N ký tự ASCII in † , kết quả đầu ra một chương trình mà sẽ thoát với mã exit C , nơi C là điểm mã ASCII ở vị trí 0 trong S . Chương trình này bạn viết sẽ bổ sung sản lượng một chương trình P , như vậy mà, khi chạy, nó thoát với mã lối ra C ' , nơi C' là điểm mã ASCII tại vị trí 1 trong S . Chương trình P sẽ ra một chương trình P ' . Quá trình này lặp lại cho đến khi không còn ký tự nào trong S. Sau khi hoàn thành, bạn phải xuất ra bất cứ thứ gì, theo sau là một dòng mới tùy chọn; và nên thoát với mã thoát 0.
† Các nhân vật giữa 0x20
và 0x7e
toàn diện.
Một số quy tắc khác:
- Các chương trình tự sửa đổi không được phép: bạn phải xuất nguồn sang STDOUT (hoặc, trả về giá trị ban đầu)
- Bạn không thể đọc mã nguồn của riêng bạn.
Chương trình ngắn nhất như vậy tính bằng byte sẽ giành chiến thắng.
Đối với một số thử nghiệm thô sơ, kịch bản ruby này có thể được sử dụng. (Đối số đầu tiên là cách bạn gọi tập lệnh, thứ hai là chương trình và thứ ba là chuỗi đầu vào.)
Ví dụ giả thuyết
Nói chương trình là FOO
. Khi cho chuỗi "ABC", nó xuất ra BARA
. Chương trình này thoát với mã 65
và đầu ra BARB
. Điều này lần lượt thoát với mã 66
và ouputs BARC
. Chương trình này thoát với mã 67
và đầu ra BAR!
. Điều này đầu ra không có gì, và thoát với mã 0
.
33 throw
ném một số tùy ý. Bạn sử dụng phủ định cho cấp độ hệ điều hành và độ lệch là -512. Idk nhiều, hoặc, nhưng tôi đang tìm ở đây: complang.tuwien.ac.at/forth/gforth/Docs-html/...
0
là thành công. tio.run/nexus/ từ