Liên quan đến: Tạo một; # trình thông dịch và Tạo; # mã
;# - Hướng dẫn gió lốc
Đây là một ngôn ngữ đơn giản với hai lệnh. Cấu trúc dữ liệu duy nhất của nó là một bộ tích lũy, được khởi tạo thành 0.
;Tăng tích lũy#Tính giá trị của modulo tích lũy 127 và in ký tự ASCII tương ứng. Sau đó, đặt lại bộ tích về 0.
Mã nguồn có thể chứa các ký tự bổ sung (khoảng trắng ASCII + có thể in), nhưng chúng được coi là các nhận xét và không có tác dụng trong việc thực hiện chương trình.
Thử thách
Vì hầu hết các máy tính không được ;#cài đặt sẵn, nên sẽ rất hữu ích khi có một công cụ có thể chuyển đổi ;#mã sang ngôn ngữ khác. Trong thử thách này, bạn sẽ viết một chương trình để thực hiện điều này.
Đầu vào
Một số ;#mã nguồn, được thực hiện thông qua đối số hoặc STDIN. Mã nguồn này có thể chứa (bình luận) các ký tự khác ;hoặc #.
Đầu ra
Mã, trong cùng ngôn ngữ với nội dung gửi của bạn, khi được thực thi, sẽ in / trả về cùng một chuỗi với ;#mã gốc . Mã kết quả này có thể xuất ra một dòng mới sau chuỗi đích, nếu điều đó thuận tiện hơn cho ngôn ngữ của bạn.
Ghi chú
Một điều cần chú ý là các chuỗi thoát, chẳng hạn như mã in dấu gạch chéo ngược hoặc in dấu ngoặc kép. Ngoài ra, hãy tìm ;#mã có thể chứa những thứ trông giống như từ khóa hoặc lệnh trong ngôn ngữ của bạn.
Hạn chế bổ sung
Tất cả các chương trình phải chấm dứt (tôi thường coi đây là mặc định, nhưng ai đó đã hỏi về nó vì vậy tôi nói rõ ở đây).
Ví dụ
input: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#
output (python): print(";#")
input: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;#
output (element): \'`
;hoặc #?
;#được cài đặt sẵn ...