Thử thách:
Viết mã mà khi được thực thi sẽ xuất mã nguồn của chương trình thứ hai có thể được thực thi bằng ngôn ngữ khác. Chương trình thứ hai sẽ xuất mã nguồn của chương trình thứ ba có thể được thực thi bằng ngôn ngữ thứ ba, v.v. Chương trình cuối cùng sẽ xuất ra PPCG
với một dòng mới duy nhất tùy chọn.
Người chiến thắng sẽ là người nộp bài với nhiều ngôn ngữ nhất. Độ dài mã của chương trình đầu tiên sẽ là bộ ngắt kết nối.
Các quy tắc quan trọng:
- Không có chương trình nào có thể giống hệt nhau
- Mỗi ngôn ngữ chỉ phải hoạt động trên một trong các mã nguồn. Không thể sử dụng cùng một ngôn ngữ hai vị trí trong chuỗi mà không phá vỡ nó (xem ví dụ) .
- Một chuỗi rút ngắn không phải là một chuỗi bị hỏng. Nếu bạn có thể sử dụng ngôn ngữ ở một nơi khác ngoài dự định và kết quả cuối cùng vẫn là PPCG thì không hợp lệ
- Tất cả các phiên bản của một ngôn ngữ được tính là ngôn ngữ duy nhất (nhưng hãy ghi nhớ quy tắc số 2)
Ví dụ:
Một đệ trình không hợp lệ:
print("""print'disp("PPCG")'""")
- Python 3:
print("""print'disp("PPCG")'""")
bản inprint'disp("PPCG")'
- Python 2:
print'disp("PPCG")'
indisp("PPCG")
- Octave:
disp("PPCG")
inPPCG
Điều này hoạt động đúng, nhưng: bạn có thể chạy cả mã thứ nhất và mã thứ hai trong Python 2 mà không phá vỡ chuỗi, vì vậy điều này vi phạm quy tắc số 2.
Một bài nộp hợp lệ với điểm 3:
print("""print'disp("PPCG")'""")
- Python 3:
print("""print'disp("PPCG")'""")
bản inprint'disp("PPCG")'
- Perl:
print'disp("PPCG")'
bản indisp("PPCG")
- Octave:
disp("PPCG")
inPPCG
Đây là mã chính xác giống như ví dụ không hợp lệ. Sự khác biệt là, chúng tôi đã chọn các ngôn ngữ tuân thủ quy tắc số 2: Bạn không thể chạy mã đầu tiên trong Perl / Octave, mã thứ hai trong Python 3 / Octave cũng như mã cuối cùng trong Python 3 / Perl. Điều này hợp lệ ngay cả khi Python 2 có thể chạy hai chương trình đầu tiên, vì chúng tôi chưa sử dụng Python 2 làm một trong các ngôn ngữ.