Deadfish là một "ngôn ngữ lập trình" đùa với bốn lệnh. Vì trang Esolang hơi mâu thuẫn và các thông dịch viên trên trang đó không hoạt động giống hệt nhau, nên bạn nên thực hiện biến thể sau:
Đặc điểm kỹ thuật
- Có một bộ tích lũy có kích thước tối thiểu 16 bit, được phép nhiều hơn nhưng ít hơn là không. Số âm không cần phải được hỗ trợ. Bộ tích lũy là
0khi chương trình bắt đầu. - Có hai bộ bốn lệnh sau và chương trình của bạn phải hỗ trợ cả hai cùng một lúc.
Cá chết tiêu chuẩn Biến thể XKCD │ Ý nghĩa ─ ─ ─ ─ Giới thiệu về giới tính của bạn i │ x accum Tích lũy tăng d │ d accum Bộ tích lũy giảm dần s │ k │ Hình vuông (acc = acc * acc) o │ c accum Bộ tích lũy đầu ra, dưới dạng số - Nếu, sau khi thực hiện một lệnh, bộ tích lũy là
-1hoặc256, bộ tích lũy phải được đặt lại về 0. Lưu ý rằng đây không phải là bao quanh bình thường. Nếu, giả sử, bộ tích lũy là20vàslệnh được chạy, bộ tích lũy sẽ là400sau đó. Tương tự, nếu bộ tích lũy257vàdlệnh được chạy, bộ tích lũy sẽ trở thành0. - Bất kỳ đầu vào nào không phải là một trong những lệnh này sẽ bị bỏ qua.
Chương trình kiểm tra
xisksonên đầu ra0xiskiscnên đầu ra289
Tôi / O
Chương trình của bạn sẽ hiển thị lời nhắc : >>. Lời nhắc phải ở đầu một dòng mới. Sau đó, nó sẽ đọc một dòng đầu vào của người dùng và chạy các lệnh đã cho từ trái sang phải. Khi xuất số, các số phải được tách. Tức 12 34là ổn, 12,34ổn
12
34
Không sao, nhưng 1234không phải.
Chương trình của bạn nên tiếp tục làm điều này trong một vòng lặp, ít nhất là cho đến khi EOFđạt được.
Phiên ví dụ:
>> xiskso
0
>> xiskisc
289
>> ddddo ddddo
285
281
>> ddddo ddddo
277
273
>> dddddddo
266
>> dddddddddo
257
>> do
0
>> do
0
>> io
1
>>
#{STDIN.gets}sẽ hoạt động nhưng thực sự nó không.