คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่เมื่อได้รับการว่างสตริงSของNตัวอักษรพิมพ์ ASCII † , เอาท์พุทโปรแกรมที่จะออกด้วยรหัสทางออกCที่Cเป็นจุดโค้ด ASCII ที่ตำแหน่ง 0 ในS โปรแกรมนี้คุณเขียนจะเพิ่มการส่งออกโปรแกรมPเช่นว่าเมื่อวิ่งออกมาจากทางออกด้วยรหัสC 'ที่C'เป็นจุดโค้ด ASCII ที่ตำแหน่ง 1 ในS โปรแกรมPออกจะอีกหนึ่งโปรแกรมP ' กระบวนการนี้ทำซ้ำจนกว่าจะไม่มีตัวอักษรเหลืออยู่ในS. หลังจากสิ่งนี้เสร็จสิ้นคุณจะต้องไม่แสดงผลใด ๆ ตามด้วยบรรทัดใหม่ที่เป็นทางเลือก และควรออกด้วยรหัสทางออก 0
†ตัวอักษรระหว่าง0x20และ0x7eรวม
กฎบางอย่างเพิ่มเติม:
- ไม่อนุญาตให้แก้ไขโปรแกรมด้วยตนเอง: คุณต้องส่งออกแหล่งข้อมูลไปยัง STDOUT (หรือส่งคืนค่าเริ่มต้น)
- คุณไม่สามารถอ่านซอร์สโค้ดของคุณเองได้
โปรแกรมที่สั้นที่สุดในหน่วยไบต์จะเป็นผู้ชนะ
สำหรับการทดสอบเบื้องต้นสคริปต์ทับทิมนี้สามารถใช้ได้ (อาร์กิวเมนต์แรกคือวิธีที่คุณเรียกใช้สคริปต์ข้อที่สองคือโปรแกรมและข้อที่สามคือสตริงอินพุต)
ตัวอย่างสมมุติ
FOOกล่าวว่าโครงการคือ เมื่อได้รับสตริง "ABC" BARAมันจะออกผลลัพธ์ โปรแกรมนี้ออกด้วยรหัสและเอาท์พุท65 BARBนี้ในการเปิดออกด้วยรหัสและเพื่อถ่ายทอด66 BARCโปรแกรมนี้ออกด้วยรหัสและเอาท์พุท67 นี้เอาท์พุทอะไรและออกด้วยรหัสBAR!0
33 throwการโยนหมายเลขโดยพลการ คุณใช้เชิงลบสำหรับระดับระบบปฏิบัติการและออฟเซ็ตคือ -512 idk มาก แต่ฉันกำลังดูที่นี่: complang.tuwien.ac.at/forth/gforth/Docs-html/…
0คือความสำเร็จ tio.run/nexus/…