ต่อไปนี้การเข้าสู่โลกที่ยุ่งเหยิงของฉันฉันคิดว่าการแชร์รหัสอ้างอิง แต่ทำไมเพียงแค่แสดงรหัสให้มันทำให้กอล์ฟด้วย!
ท้าทาย
เขียนสคริปต์ที่เลื่อนสตริงข้ามเทอร์มินัลจากขวาไปซ้ายปักหลักที่ด้านซ้าย
อินพุต
รับค่าสตริงเป็นอาร์กิวเมนต์
ผลลัพธ์
พิมพ์ตัวเลื่อนปะรำไปที่ STDOUT ความกว้างสูงสุด ~ 50 ตัวอักษร เริ่มต้นด้วยการแสดงอักขระ 0 หรือ 1 ช่องว่างระหว่างตัวอักษรบางส่วนในขณะที่เลื่อน หยุดเมื่อถูกตัดสิน (ไม่มีช่องว่างพิเศษระหว่างตัวอักษรคำ) เลื่อนช้า แต่ไม่ช้าเกินไป (<1 วินาทีต่อการทำซ้ำ)
ตัวอย่าง
กำลังเรียกใช้สคริปต์ด้วย arg 'Hello World'
H
ต่อมา
H e l l o W o
ต่อมา
H e l l o W o r l d
ต่อมา
Hell o W o r l d
ในที่สุด
Hello World
สำหรับตัวอย่างการใช้งานลองใช้รหัสของฉันจากการท้าทาย "Hello World" ในที่สุดฉันจะโพสต์ของฉัน ปัจจุบันคือ 202 chars ใน Perl ตอนนี้มีคู่แข่งบ้างฉันโพสต์คำตอบแล้ว
ผู้ชนะ
ฉันไม่ต้องการให้ข้อ จำกัด สัมบูรณ์นั่นคือสาเหตุที่ทำให้ฉันคลุมเครือเล็กน้อย สคริปต์ที่สั้นที่สุดซึ่งตามจิตวิญญาณดั้งเดิมของฉันจะเป็นผู้ชนะ
หมายเหตุ
เกมนี้ถือว่าเป็นxterm
สภาพแวดล้อม หากสภาพแวดล้อมอื่นพิสูจน์ว่ามีประโยชน์จะเปรียบเทียบสภาพแวดล้อมที่คล้ายกันเท่านั้นและอาจมีการประกาศผู้ชนะแยกต่างหากสำหรับแต่ละคน
ภาคผนวก (25 เมษายน 2555)
เพื่อแก้ไขปัญหาเรื่องการออกรุ่นฉันกำลังพิจารณาคดี จำนวนตัวอักษรของคุณจะต้องมีรหัสที่จำเป็นสำหรับ:
- Flush STDOUT (มองที่คุณทับทิม)
- ใช้งาน
sleep
กับการหน่วงเวลา <1 วินาที (มองคุณ Perl)
สิ่งนี้อาจทำได้เมื่อบรรทัดคำสั่งสลับไปที่ล่าม แต่ตัวอักษรเหล่านั้นนับรวมทั้งหมด (sans ล้อมรอบช่องว่าง)
xterm
,vt102
... ?